大家爬虫一般都用什么框架?有什么教程推荐吗?

293 天前
 whooami
6746 次点击
所在节点    程序员
58 条回复
PTLin
293 天前
我感觉主要就两种,一种单解析 html 的库,一种 WebDriver 的库,你对着你的语言看着选就行
LoNeFong
293 天前
scrapy
yekern
293 天前
python: scrapy
go: gocolly/colly
centralpark
293 天前
不推荐用包括 scrapy 在内的任何框架。参见: https://www.zhihu.com/question/293589348
vdrapb
293 天前
java jsoup
yvescheung
293 天前
xiangyuecn
293 天前
手撸,日常简单使用:浏览器控制台 + 内置 XMLHttpRequest😂 日常爬攒劲小视频 m3u8 里面的 ts 文件🐶
monsterx2a
293 天前
@centralpark 简单看了下里面内容, 不推荐的原因有:
monsterx2a
293 天前
1. 太重了, 杀鸡用不了牛刀
2. 对初学者不友好, 其实跟着文档,开箱即用了
3. 太快了,scrapy 不是可以通过配置来改变规则的吗?
4. 封装过度,细节不易控制。scrapy 里面的日志很详细的, 并且 python 里面是动态类型,增加猴子补丁的方法很方便。


这是我对你这个问题的几个疑问。 不知道是不是我没有理解里面的意思。

我一直都用 scrapy 来做爬虫的
monsterx2a
293 天前
并且上面提到爬虫重点是策略, 可是 scrapy 都具有的, 可以通过 headless 来控制, 甚至输入验证码等
libook
293 天前
熟悉前端开发的话,可以用 Puppeteer ,因为核心思路就是用脚本自动控制 Chrome 浏览器,所以不会有兼容性问题,爬虫检测也很容易绕开。我基本都是用这个来做爬虫。
zhangkunkyle
293 天前
根据我的经验,大规模分布式爬虫,都是不用框架自己设计,因为涉及到 html 、json 、app 等类型的解析,列表页详情页的处理,反爬处理,文件下载,简单清洗,代理使用等等,一般都是把每个功能都拆分开,使用消息队列或者接口等方式来沟通,还要和业务结合。没有推荐的教程,如果基本的包都会用,那就是架构设计问题了
AndyChina
293 天前
如果需要批量写爬虫, 直接使用 scrapy, 迭代这么多年的开源项目, 帮你处理并发/重试/cookie/任务调度/指标统计等一系列问题, 有啥不满意的, 别听他们什么薄封装, 厚封装, 根本就是懒得翻文档, 只好重复写轮子罢了

框架的意义就在于帮你模块化处理各种事情, 用户只需要关注处理具体的 http 请求, 当在使用中逐渐熟悉 scrapy, 就会了解设计的精妙之处, 如果不满意之处, 也可以自由添加自己的功能

当然, 如果你只是想临时写一个小的爬虫, 并且不熟悉 scrapy, 那直接用 requests 就很合适

如果追求极致底层, 那应该用 urllib😊
ccraohng
293 天前
https://github.com/xiyuan-fengyu/ppspider

nodejs 这个好用
cheerio + puppeteer
streamrx
293 天前
框架根本就不重要, 爬虫唯一难的就是逆向 js,逆向 app 只有逆向是爬虫的核心 其他的步骤是个人都能写出来
LitterGopher
293 天前
就是 requests + beautifulsoup ,没有框架(大概是我写的内容都比较简单的原因吧)。
whooami
293 天前
感谢各位推荐及建议,只是感觉重新造轮子时间成本有点高
whooami
293 天前
@yvescheung
@libook
两位推荐的如果部署在服务器上,没有浏览器是不是就用不了了?
coderluan
293 天前
scrapy ,但是不建工程,只写单文件脚本,有时候怕出事就用油猴脚本前端爬。
patz
293 天前
教程强烈推荐崔庆才老师的 [Python 3 网络爬虫实战] ,外国关于爬虫的教程和书籍很零碎,就是看了这书学到了全面的爬虫技术! https://python3webspider.cuiqingcai.com/

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

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

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

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

© 2021 V2EX