PHP网络爬虫

作者: AI看舌 | 来源:发表于2017-08-30 12:34 被阅读434次

目前网络爬虫用的比较多的是用Python写的,有很多第三方包可以直接使用,而使用PHP的网络爬虫很少有现成的开发包,大多都是公司自己内部开发的,本文则主要介绍使用PHP如何开发网络爬虫,提供正则匹配dom标签的封装。

本文结构:

一、抓取需要登录网页

二、抓取不需要登录的网页

三、总结

本文适合有过PHP curl和正则开发经验的人群。

一、抓取需要登录网页

1、拿到cookie

需要登录后的网页通常利用curl模块发送cookie模拟请求,查看cookie的方式如下:

2、利用cookie获取网页内容

演示代码如下:

其中phpcharset函数是转换字符编码用,具体代码如下:

3、获取网页指定dom内容

此处需要用到正则匹配HTML标签,下面提供的函数支持指定HTML标签、指定ID属性和指导class属性匹配:

二、抓取不需要登录的网页

同上面的方法,只是抓取网络内容的时候不需要指导cookie值。

三、总结

1、如果想爬取整个网站的内容怎么操作?

利用上面的ihttp_get先获取首页内容,然后利用get_tag_content获取页面所有的a标签内容,然后递归即可。

2、get_tag_content之所以提供指定id熟悉和class熟悉,是为了方便查找特定的dom标签,可以更加快速的获取想要的内容入库。

3、不熟悉正则表达式的童鞋可以通过simple_html_dom来解析,不过耗用内存大。

4、如果抓取很多页面,建议通过swoole开启多线程来抓取。

相关文章

网友评论

    本文标题:PHP网络爬虫

    本文链接:https://www.haomeiwen.com/subject/ujzzdxtx.html