采集网站内容(使用phpQuery轻松采集网页内容,像使用jQuery一样处理页面内容)
优采云 发布时间: 2021-11-20 09:09采集网站内容(使用phpQuery轻松采集网页内容,像使用jQuery一样处理页面内容)
使用phpQuery轻松采集网页内容,像jQuery一样处理页面内容
phpQuery 是一个基于 PHP 的服务器端开源项目,它可以让 PHP 开发者轻松处理 DOM 文档的内容,比如获取某个新闻的头条新闻网站。更有趣的是它使用了jQuery的思想。你可以像使用jQuery一样处理页面内容,获取你想要的页面信息。
采集头条新闻
先看个例子,现在我要采集新浪国内新闻头条,代码如下:
复制代码代码如下:
收录'phpQuery/phpQuery.php';
phpQuery::newDocumentFile('');
echo pq(".blkTop h1:eq(0)")->html();
简单的三行代码,即可获取标题内容。首先在程序中收录phpQuery.php核心程序,然后调用读取目标网页,最后输出对应标签下的内容。
pq() 是一个强大的方法,就像jQuery的$()一样,jQuery的选择器基本可以用在phpQuery上,只要把“.”改一下就行了。到“->”。如上例, pq(".blkTop h1:eq(0)") 抓取页面上class属性为blkTop的DIV元素,找到DIV里面的第一个h1标签,然后使用html ()方法获取h1标签中的内容(带html标签),也就是我们要获取的标题信息,如果使用text()方法,只会获取到标题的文字内容。当然,一定要用好phpQuery,关键是在文档Content节点中找到对应的。
采集文章列表
再看下面的例子,获取网站的博客列表,请看代码:
复制代码代码如下:
收录'phpQuery/phpQuery.php';
phpQuery::newDocumentFile('');
$artlist = pq(".blog_li");
foreach($artlist as $li){
echo pq($li)->find('h2')->html()."";
}
找到文章的标题并通过循环列表中的DIV输出就是这么简单。
解析 XML 文档
假设有一个像这样的 test.xml 文档:
复制代码代码如下:
张三
22
王舞
18
现在想获取联系人张三的年龄,代码如下:
复制代码代码如下:
收录'phpQuery/phpQuery.php';
phpQuery::newDocumentFile('test.xml');
echo pq('contact> age:eq(0)');
结果输出:22
和jQuery一样,它就像准确找到文档节点,输出节点下的内容,解析一个XML文档一样简单。现在你不需要对采集网站的内容使用头疼的正则算法和内容替换等繁琐的代码。有了 phpQuery,一切都变得简单了。
phpquery项目官网地址:
以上是phpQuery采集网页使用方法的详细内容。更多详情请关注其他相关html中文网站文章!