爬取上千个不同类型的网站中的文章,大佬们有没有啥解决思路?

2019-08-09 14:39:22 +08:00
 Wh0amis
目前需求是这样的:有 3000 多个不同类型的咨询网站。这些网站包含有个人博客,新闻网站,还有一些微信公众号。要从这 3000 多个网站里面爬取更新的文章标题及 URL 还有发布时间。现在有点懵。写爬虫的话难道要一个站一个规则么。有没有统一爬取的解决方案呢?
5735 次点击
所在节点    Python
36 条回复
smallpython
2019-08-09 15:03:53 +08:00
文章标题及 URL 还有发布时间, 这三个信息有什么用吗?
先把所有网页都保存下来,提取的事情慢慢弄
结果不要求百分百准确的话可以层层过滤
yuhao2019
2019-08-09 15:04:04 +08:00
同问,
foxyier
2019-08-09 15:56:11 +08:00
需要人工去查看这些网站的相同点, 根据相同点编写通用性更强的匹配规则。 如果能完全统一爬取的话, 爬虫工程师早就都失业了
snappyone
2019-08-09 16:04:35 +08:00
我写了个通用爬虫平台,根据配置化来爬取不同网站,思路供参考
Gakho
2019-08-09 16:11:03 +08:00
这个需求似曾相识。。。还好把这个东西外包出去了
Dex7er
2019-08-09 16:13:03 +08:00
我只能说你这个输入网址就能自动爬取网站更新内容的设想很有价值。。。目前做得最好的是谁来着,google ?
lihongjie0209
2019-08-09 16:13:27 +08:00
没有, 规则只是一部分, 每个站的反爬估计就要单独写了
zqjilove
2019-08-09 16:35:38 +08:00
如果是文章类型的网站,相对来说,还有解决方式,无需每个网站写规则。只需要通过正文提取的方法来实现,目前也有很多类似的源码可以用( readability、Html2Article 等),坏消息就是,正文提取方式还是会提取到不需要的信息,或者提取不到正文的情况。
zqjilove
2019-08-09 16:37:07 +08:00
可以看看这个帖子 /t/309948
Northxw
2019-08-09 17:59:10 +08:00
爬虫配置系统可以有,但是匹配规则还是要自己写,这个目前没办法的
augustheart
2019-08-09 18:07:48 +08:00
我抛个砖头,你可以看看有没有帮助。我不是做这个的,就一瞎说。
你可以研究一下浏览器(比如火狐)的阅读模式是如何定位主要文章内容的。
TopcoderWuxie
2019-08-09 18:25:07 +08:00
抽象出来底层方法,每个网站一个 xpath 是否可行?我看我们公司的爬虫一周几百个忙的不亦乐乎。
rayhy
2019-08-09 18:30:12 +08:00
之前一直在学生团队里做这种东西的外包。。。思路是把 html 转成 xml,然后每个网站都写 XQuery 来提取信息。相当于是每个都写配置文件。然后把写配置文件,更新配置文件的任务外包给大学生就行。
locoz
2019-08-09 18:37:07 +08:00
只是文章类的东西的话,可以用智能提取,有钱的话直接上 diffbot,效果很好。
tikazyq
2019-08-09 18:38:05 +08:00
试试 Crawlab 的可配置爬虫( python 版本),上百个不成问题。请关注最新版本的更新,后期会将可配置爬虫更新到 Golang 版本。

https:// github.com/tikazyq/crawlab
locoz
2019-08-09 18:38:41 +08:00
没钱的话就拿开源的用用,加一层人工检测的步骤,智能提取的有问题就手动标规则。
tikazyq
2019-08-09 18:39:29 +08:00
当然还有一种思路就是写通用爬虫,借助一些算法智能识别所需抓取字段,但这对技术要求比较高
fifa666
2019-08-09 18:44:29 +08:00
alaikis
2019-08-09 19:00:56 +08:00
就这几个字段,无法就是一个分页方式,一个 xpath 的解析规则,然后用一个表存一下规则就好了
beastk
2019-08-09 19:27:44 +08:00
老铁,规则还是得自己弄,你又不是搞人工智能对不

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

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

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

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

© 2021 V2EX