首頁 >後端開發 >php教程 >javascript - 怎么使用CasperJs抓取网页?

javascript - 怎么使用CasperJs抓取网页?

WBOY
WBOY原創
2016-06-06 20:28:15991瀏覽

在知乎上看到有个php爬虫的思路是这样写的:

  • pcntl_fork或者swoole_process实现多进程并发。按照每个网页抓取耗时500ms,开200个进程,可以实现每秒400个页面的抓取。

  • curl实现页面抓取,设置cookie可以实现模拟登录 simple_html_dom 实现页面的解析和DOM处理

  • 如果想要模拟浏览器,可以使用casperJS。用swoole扩展封装一个服务接口给PHP层调用

  • 在多玩网这里有一套爬虫系统就是基于上述技术方案实现的,每天会抓取几千万个页面。

第1、2点可以弄,当然我不用swoole。第3点中的casperJS不太懂,怎样用啊?

回复内容:

在知乎上看到有个php爬虫的思路是这样写的:

  • pcntl_fork或者swoole_process实现多进程并发。按照每个网页抓取耗时500ms,开200个进程,可以实现每秒400个页面的抓取。

  • curl实现页面抓取,设置cookie可以实现模拟登录 simple_html_dom 实现页面的解析和DOM处理

  • 如果想要模拟浏览器,可以使用casperJS。用swoole扩展封装一个服务接口给PHP层调用

  • 在多玩网这里有一套爬虫系统就是基于上述技术方案实现的,每天会抓取几千万个页面。

第1、2点可以弄,当然我不用swoole。第3点中的casperJS不太懂,怎样用啊?

你可以看它的文档。这里有例子http://docs.casperjs.org/en/latest/quickstart.html

简单讲casperjs是基于phantomjs的script, 模拟浏览器的意思是它不需要浏览器来渲染页面,但是也可以来navigate, 对DOM进行操作什么的

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn