作者:喜生-Da | 2021-09-08 09:31
如何用PHP语言编写网络爬虫?1.别跟我说PHP不适合干这个,我不想为了写爬虫专门学一门新的语言,我知道它能实现2.我又一定的PHP编程基础,熟悉数据结构与算法,有一般的网络基础知识,比如TCPIP协议等概念3.能否提供具体书籍名称,网络文章名4.我可以贪心的求源码么?谢谢!
如何用PHP语言编写网络爬虫?
1.别跟我说PHP不适合干这个,我不想为了写爬虫专门学一门新的语言,我知道它能实现
2.我又一定的PHP编程基础,熟悉数据结构与算法,有一般的网络基础知识,比如TCP/IP协议等概念
3.能否提供具体书籍名称,网络文章名
4.我可以贪心的求源码么?
谢谢!
回复内容:
- pcntl_fork或者swoole_process实现多进程并发。按照每个网页抓取耗时500ms,开200个进程,可以实现每秒400个页面的抓取。
- curl实现页面抓取,设置cookie可以实现模拟登录
- simple_html_dom 实现页面的解析和DOM处理
- 如果想要模拟浏览器,可以使用casperJS。用swoole扩展封装一个服务接口给PHP层调用
在多玩网这里有一套爬虫系统就是基于上述技术方案实现的,每天会抓取几千万个页面。
你需要这个-Goutte, a simple PHP Web Scraper-FriendsOfPHP/Goutte · GitHub
USTC Spider
这就是用PHP写的,每隔一段时间抓取一下目标网站,将数据写入本地,然后直接读取本地文件即可。
php实现内容爬虫不难,楼上说的curl,selenium已经几乎可以完成所有可能的任务了。但是,如果还想进行内容处理,最好还是能加上一个可以处理用户交互的东西,casperjs就是啦。
《Webbots、Spiders和Screen Scrapers:技术解析与应用实践》
下午刚写的一个 通过关键词抓取符合要求的豆瓣小组的信息
,很糙。也是刚开始学。
有个问题就是老被封, 还在想怎么解决...
还有就是太慢了... 单线程做的. 我看投票最多的答案还挺好的。准备继续改造改造。
php模拟登录教务系统,测试时显示登录成功但是页面没有跳转出来
最简单的用正则表达式+get_file_contents即可实现爬虫