首页 > 编程知识 正文

php抓取网页上的指定内容(php截取网页指定内容)

时间:2023-12-24 12:05:26 阅读:320314 作者:NFEH

本文目录一览:

php抓取网页指定的内容

我给你一个思路, 代码我也不会给的, 会被百度删的.

抓取网上的数据, 一般用正则去匹配. 你可以匹配开头为div class="so_weather"的, 然后匹配结尾. 结尾尽量是这个开头div的下一个同级div, 如div id="asda", 这样. 然后得到的数据用strip_tags函数将html代码都去了, 得到的结果就是你想要的

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获取网页内容的几种方法

简单的收集下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

$str

=

str

th1/th

td

class="key"a

href="网址1"

target="_blank"你要的地址1/a/td

th2/th

td

class="key"a

href="网址2"

target="_blank"你要的地址2/a/td

th3/th

td

class="key"a

href="网址3"

target="_blank"你要的地址3/a/td

th4/th

td

class="key"a

href="网址4"

target="_blank"你要的地址4/a/td

th5/th

td

class="key"a

href="网址5"

target="_blank"你要的地址5/a/td

str;

$p

=

'#td

class="key"a

href="(.*)"

target="_blank"(.*)/a/td#iUs';

preg_match_all($p,$str,$ar);

print_r($ar[0]);

?

$ar[0]

的所有值就是你想要的地址了

测试过

没问题

PHP采集网页中指定的内容

你如果是单个页面的话不需要正规表达式,只要找到自己需要的部分看看前面和后面有什么唯一性的标识,截取出来就可以了。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。