用PHP获取网页部分数据
如果你要
成都创新互联是一家专业提供即墨企业网站建设,专注与网站设计制作、成都网站制作、H5场景定制、小程序制作等业务。10年已为即墨众多企业、政府机构等服务。创新互联专业网站设计公司优惠进行中。
和
之间的所有源码,用 preg_match 就可以,不用preg_match_all ,如果你要里面的所有的
标签中的内容,可以用preg_match_all //提取所有代码 $pattern = '/
(.+?)
/is'; preg_match($pattern, $string, $match); //$match[0] 即为
和
之间的所有源码 echo $match[0]; //然后再提取
之间的内容 $pattern = '/(.+?)li/is'; preg_match_all($pattern, $match[0], $results); $new_arr=array_unique($results[0]); foreach($new_arr as $kkk){ echo $kkk; }
php获取指定网页内容
一、用file_get_contents函数,以post方式获取url
?php
$url= '';
$data= array('foo'= 'bar');
$data= http_build_query($data);
$opts= array(
'http'= array(
'method'= 'POST',
'header'="Content-type: application/x-www-form-urlencoded\r\n" .
"Content-Length: " . strlen($data) . "\r\n",
'content'= $data
)
);
$ctx= stream_context_create($opts);
$html= @file_get_contents($url,'',$ctx);
二、用file_get_contents以get方式获取内容
?php
$url='';
$html= file_get_contents($url);
echo$html;
?
三、用fopen打开url, 以get方式获取内容
?php
$fp= fopen($url,'r');
$header= stream_get_meta_data($fp);//获取报头信息
while(!feof($fp)) {
$result.= fgets($fp, 1024);
}
echo"url header: {$header} br":
echo"url body: $result";
fclose($fp);
?
四、用fopen打开url, 以post方式获取内容
?php
$data= array('foo2'= 'bar2','foo3'='bar3');
$data= http_build_query($data);
$opts= array(
'http'= array(
'method'= 'POST',
'header'="Content-type: application/x-www-form-
urlencoded\r\nCookie:cook1=c3;cook2=c4\r\n" .
"Content-Length: " . strlen($data) . "\r\n",
'content'= $data
)
);
$context= stream_context_create($opts);
$html= fopen(';id2=i4','rb',false, $context);
$w=fread($html,1024);
echo$w;
?
五、使用curl库,使用curl库之前,可能需要查看一下php.ini是否已经打开了curl扩展
?php
$ch= curl_init();
$timeout= 5;
curl_setopt ($ch, CURLOPT_URL, '');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents= curl_exec($ch);
curl_close($ch);
echo$file_contents;
?
用php获取指定网页内容
function getRemoteRes($url, $postfields = NULL,$timeout=60) {
$ci = curl_init ();
curl_setopt ( $ci, CURLOPT_URL, $url );
curl_setopt ( $ci, CURLOPT_HEADER, FALSE );
curl_setopt ( $ci, CURLOPT_RETURNTRANSFER, TRUE );
curl_setopt ( $ci, CURLOPT_SSL_VERIFYPEER, 0 );
curl_setopt ( $ci, CURLOPT_SSL_VERIFYHOST, 0 );
curl_setopt ( $ci, CURLOPT_TIMEOUT, $timeout );
curl_setopt ( $ci, CURLOPT_POST, TRUE );
if (is_array ( $postfields )) {
$field_str = "";
foreach ( $postfields as $k = $v ) {
$field_str .= "$k=" . urlencode ( $v );
}
curl_setopt ( $ci, CURLOPT_POSTFIELDS, $field_str );
}
$response = curl_exec ( $ci );
if (curl_errno ( $ci )) {
return 'ERRNO!';
} else {
$httpStatusCode = curl_getinfo ( $ci, CURLINFO_HTTP_CODE );
if (200 !== $httpStatusCode) {
return 'ERRNO!';
}
}
curl_close ( $ci );
return $response;
}
先用以上函数获取指定的网页,然后从返回的数据中解析出你要的数据.可以使用正则表达式来提取,这要根据你要获取的页面源代码来判断了.暂时未知,以上只是提供一个思路给你.
分享题目:php获取网页指定数据 php获取网页指定内容
标题网址:http://scgulin.cn/article/dojcspi.html