php抓取网页部分数据 php获取网站内容

php中想要抓取网页中某一段的数据的代码?php
$url='abc.com/';
$data=https://www.04ip.com/post/get_file($url);
$pattern='你的内容正则表达式';
perg_match($pattern,$data,$match);
print_r($match);
function get_file($url)
{
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$data = https://www.04ip.com/post/curl_exec($curl);
return $data;
}
?
PHP怎样抓取网页代码中动态显示的数据PHP Simple HTML DOM或者phpQuery可以直接取得某些div中的内容,里面有几个例子专门针对于网页抓取,调整好抓取频次 , 舍去已经存在的数据,你可以参考下
;id=57class=2
PHP获取网页内容的几种方法简单的收集下PHP下获取网页内容的几种方法:
用file_get_contents,以get方式获取内容 。
用fopen打开url,以get方式获取内容 。
使用curl库,使用curl库之前,可能需要查看一下php.ini是否已经打开了curl扩展 。
用file_get_contents函数,以post方式获取url 。
用fopen打开url , 以post方式获取内容 。
用fsockopen函数打开url , 获取完整的数据,包括header和body 。
PHP抓取网页指定内容?php
/*
* 如下:方法有点笨
* 抓取网页内容用 PHP 的正则
* 用JS每隔5分钟刷新当前页面---即重新获取网页内容
*
* 注: $mode中--title/title-更改为所需内容(如 $mode = "#a(.*)/a#";获取所有链接)
*
* window.location.href="";中的
* 更改为自己的URL----作用:即刷新当前页面
*
* setInterval("ref()",300000);是每隔300000毫秒(即 5 * 60 *1000 毫秒即5分钟)执行一次函数 ref()
*
* print_r($arr);输出获得的所有内容 $arr是一个数组 可根据所需输出一部分(如 echo $arr[1][0];)
* 若要获得所有内容 可去掉
*$mode = "#title(.*)/title#";
if(preg_match_all($mode,$content,$arr)){
print_r($arr);
echo "br/";
echo $arr[1][0];
}
再加上 echo$content;
*/
$url = ""; //目标站
$fp = @fopen($url, "r") or die("超时");
$content=file_get_contents($url);
$mode = "#title(.*)/title#";
if(preg_match_all($mode,$content,$arr)){
//print_r($arr);
echo "br/";
echo $arr[1][0];
}
?
script language="JavaScript" type="text/javascript"
--
function ref(){
window.location.href="";
}
setInterval("ref()",300000);
//--
/script
php获取指定网页内容一、用file_get_contents函数,以post方式获取url
?php
$url= '';
$data= https://www.04ip.com/post/array('foo'= 'bar');
$data= https://www.04ip.com/post/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= https://www.04ip.com/post/array('foo2'= 'bar2','foo3'='bar3');
$data= https://www.04ip.com/post/http_build_query($data);
$opts= array(

推荐阅读