Crawl Order and Disorder
a year ago
- #web-crawling
- #optimization
- #search-engine
- 搜索引擎爬虫需要很长时间才能完成,99.9%的爬取在4天内完成,剩余的0.1%需要一周时间。
- 迁移到增量爬取数据后,内存需求下降了80%,可以执行更多爬取任务。
- 爬虫限制每个域的并发任务数,以避免超过爬取速率被反爬软件拦截。
- 学术类域名由于规模庞大且子域名众多,通常设有严格的爬取限制。
- 最初的随机爬取顺序导致大型域名(通常是学术类)启动较晚,延迟了整体完成时间。
- 尝试按子域名排序适得其反,导致对博客主机同时发起过多请求。
- 增加了请求延迟的随机间隔,并修改排序策略优先处理子域名超过8个的域,从而优化了调度。
- 未来可通过历史爬取时长或磁盘数据量进一步优化任务优先级排序。