请大神们推荐一些关于 php 网络爬虫的书

2015-12-07 14:51:47 +08:00
 theKingOfTerrors

小弟的公司需要我去研究爬虫,但是网上的资料太过零散,买了一本《 WEBBOTS 、 SPIDERS 和 SCREEN SCRAPERS 技术解析与应用实践》,也从官网下载了这本书的一些 demo ,但是不知道是什么原因,一些代码运行不起来,也没有报错,也因为是中文版,所以翻译的一些地方看的不是很明白,请大神们帮忙推荐几本最好是 php 的书,小弟不会 python ,还请各位大神帮忙 推荐一些纯 PHP ,或者 php+python 入门的这些爬虫书籍,谢谢

7243 次点击
所在节点    PHP
44 条回复
theKingOfTerrors
2015-12-07 18:11:20 +08:00
@lydhr 嗯, thanks
theKingOfTerrors
2015-12-07 18:15:33 +08:00
@xiasix 麻烦问一下,您手里有没有资料,这样能给我省一些时间,谢谢
Moker
2015-12-07 18:19:44 +08:00
@iyaozhen 感觉这货就是 simple dom 和 phpquery 的杂合体
yytsjq
2015-12-07 18:56:32 +08:00
PHP 命令行模式 + Simple HTML DOM Parser
ryd994
2015-12-07 19:04:21 +08:00
@iyaozhen
@shyling 看用途咯。
curl 确实万能,基本上 linux 下大多数 http client 都是基于 libcurl 。但是太底层了,有些比较方便的功能没有,比如连接池。长连接对爬虫还是比较需要的。
我个人其实用 urllib3 多一点,因为主要是写代理, request 包装太多。
xiaoyu9527
2015-12-07 19:42:03 +08:00
我也没找到 python 的爬虫教程(或者没找到比较完善的,感觉都是一部分一部分的教)
HentaiMew
2015-12-07 19:52:24 +08:00
那些说爬虫简单的... 其实你们在写“轮循 HTTP 请求”,不能算爬虫。
knightdf
2015-12-07 19:53:33 +08:00
@theKingOfTerrors 你就想着如何模拟人去浏览网页就行了
sun2920989
2015-12-07 20:18:33 +08:00
找个美女图片的网站练手,动力满满
TaMud
2015-12-07 21:20:37 +08:00
PHP -> CURL + PHPQUERY
BAIDU -> PHP CURL 多线程

url -> http://blog.phpdr.net/curl%E5%A4%9A%E7%BA%BF%E7%A8%8B.html
shuimugan
2015-12-07 21:53:54 +08:00
推荐一个封装 curl 的库
https://github.com/rmccue/Requests

处理 html 的话就是 phpquery 了

php 做爬虫的话,主要是多进程没有好用的库,多线程倒是有 pthreads,其它像解析 js 可以用 phantomjs,验证码可以接打码平台或者写个小 python 脚本来处理...反正都能东拼西凑玩得不错

其实最主要的还是要看你公司是需要怎么样的爬虫,比如是否定向站点爬取啊,爬取目标是否有反爬手段啊,爬取目标数据量级啊,这些都确定下来才好下一步的讨论
uuspider
2015-12-07 22:37:53 +08:00
@usapla shell 里也有 curl ,也可以爬网页,也可以称得上功能强大,但是要做真正的爬虫,还是得 python
iyaozhen
2015-12-08 01:04:53 +08:00
@Moker 但这个性能确实不错,作者也有在维护。一直在用
iyaozhen
2015-12-08 01:09:52 +08:00
@ryd994 嗯,是的。看来要多实践一下
lenran
2015-12-08 02:13:26 +08:00
你需要{
"PHP 爬虫库 1":"PHPCrawl",
"PHP 爬虫库 2":"Goutte",
"PHP_robot1":"Web Spider",
"PHP_robot2":"Snoopy",
"PHP_robot3":"PhpDig",
}
libook
2015-12-08 11:27:03 +08:00
如果只是想快速开发爬虫的话就用第三方库吧,楼上的大牛们都列出来了;如果你对做爬虫感兴趣的话可以看看那些开源库的源代码,对理解 HTTP 协议和前端技术有很大帮助。最后建议学的时候着重理解思想,因为思想在任何一个语言下都可以用的。另外有一个小窍门,就是如果你想找某一功能的代码或类库直接去 github 上搜索相关关键字就可以了,有的时候会有意外惊喜。
:-p s. 你确定不学学 python ? python 的爬虫技术可是出了名的强大和成熟。
:-p :-p s. 好吧,我本人也不怎么用 python ,我都是用 nodejs 的,只是因为可以直接实例化成 Document Object 像在浏览器里操作那样直接用 js 操作,另外也可以在 node 中直接用 jquery ,处理 DOM 很方便。
theKingOfTerrors
2015-12-08 11:39:45 +08:00
@libook 我也想学 python ,但是时间问题,我现在只能用他们说的第三方库来做,我用了我买的那本书提供的代码,然后改了一些网站参数什么的,就无法运行,给那个美国作者发邮件,估计他也看不到
killerv
2015-12-08 12:05:58 +08:00
php 做爬虫不合适,建议 python
theKingOfTerrors
2015-12-08 13:47:14 +08:00
@killerv 我知道 php 做爬虫不合适,但是再去学 python ,花费的时间比较长,倒不是怕花费时间,毕竟是老板吩咐的,时间长了些不合适
TaMud
2015-12-08 15:25:32 +08:00
不要 python 了,直接上 golang

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/241720

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX