大规模数据抓取好文分享一篇,文章对设计一个单机定向日抓取百万网页的爬虫,进行了较为细致的阐述。 对日抓取百万量级,合计一亿张网页的爬虫, 在内存策略,硬盘存储策略,海量数据去重,网络性能优化方面给予了实操性很强的方案。 https://www.yuanrenxue.com/crawler/high-performance-crawler.html
1
deepall 2019-05-13 17:33:35 +08:00
大佬大佬
|
2
est 2019-05-13 17:36:21 +08:00
> 不过奇怪,bloom 里没有公有方法来判断 URL 是否重复,我用的__contains__()方法,也可能是我没用对,不过判重效果是一样的。
大佬大佬。 |
3
Northxw 2019-05-13 17:38:15 +08:00
给大佬递咖啡
|
5
laucie 2019-05-13 17:49:52 +08:00
给大佬捏腿
|
6
shyrock 2019-05-13 19:27:47 +08:00
围观大佬,学习 ing
|
7
CloudMx 2019-05-13 21:18:21 +08:00
Ping 没必要发送四次,可以自主设置。
Win: -n NUMBER Linux: -c NUMBER |
8
strugglexiang 2019-05-14 09:24:19 +08:00
递咖啡
|
9
zarte 2019-05-14 10:09:34 +08:00
说两点用 go 来替代,你那去除不需要的页面头部功能效率提高 n 倍,除非能不用 chrome 的驱动自己实现一套才有可能比别人开发的效率高。
|
11
liuxu 2019-05-14 11:38:11 +08:00
直接提取内容比直接拿 body 更好吧,body 里面有很多不需的 html 标签
|
12
foolisheddy 2019-05-14 12:50:42 +08:00 via iPhone
分析详尽,学习了!
|
13
bighead22 OP @liuxu 嗯,也可以这样。根据项目的选择来。 有的需要原始数据。另外直接提取有可能某些 html tag 确实 或者匹配规则没考虑周全,可能会大面积出现提取错误
|
14
caneman 2019-05-14 14:47:03 +08:00
如果单 IP 你爬不了 100+就被 ban 了,效率直线下降。
|
15
AmberJiang 2019-05-15 10:40:20 +08:00
谢谢大佬分享 学习了 最近也正卡在这里
|
16
bighead22 OP @caneman 反爬不错的网站,单 ip 爬不到这么多次。 降低单 IP 的单位时间抓取次数,有可能爬这么多。 但是这样单 IP 的抓取效率就太低了
|
17
caneman 2019-05-15 17:39:15 +08:00
@bighead22 靠 ADSL 拨号来切 IP,可能有一部分站在完美的理想状况下确实按你的方法能达到日抓百万。
但是大多数能够产生有利用价值数据的网站,这种方法都不太能实现单机日抓百万, IP 切换开销 6S 一次,太久了。。 |
18
dtjydsre 2019-05-16 00:02:35 +08:00
学习了
最近就在爬一个网站,大概有 1 亿个网页 感觉主要限制还是在于网站的反爬,而且它的反爬是一封就封 2-3 个月的那种 考虑稳定可靠,买了动态 IP 地址池,一个月 1000 块的样子 代理限制了最大 40 的 QPS,一天能爬差不多 300 多 W 的页面下来 |
19
foxyier 2019-05-16 16:04:03 +08:00
get,tks
|