爬虫时IP老是被封?我来教你一招
在我抓取网站碰着瓶颈,想剑走偏锋去办理时,经常会先去看下该网站的 robots.txt 文件,偶然会给你打开另一扇抓取之门。 写爬虫有许多苦恼的工作,好比: 1.会见频次太高被限定; 2.怎样大量发明该网站的 URL; 3.怎样抓取一个网站新发生的 URL,等等; 这些题目都困扰着爬虫选手,假若有大量离散 IP 和账号,这些都不是题目,可是绝大部门公司都不具备这个前提的。 我们在事变中写的爬虫大多是一次性和姑且性的使命,必要你快速完成事变就好,当碰着上面环境,试着看下 robots.txt 文件。 举个栗子: 老板给你部署一个使命,把豆瓣天天新发生的影评,书评,小组帖子,同城帖子,小我私人日记抓取下来。 初想一下,这使命得有多大,豆瓣有 1.6 亿注册用户,光是抓取小我私人日记这一项使命,每小我私人的主页你至少天天要会见一次。 这天天就得会见 1.6 亿次,小组/同城帖子等那些还没算在内。 计一律个通例爬虫,靠着那几十个 IP 是完不成使命的。 初窥robots.txt 当老板给你了上面的使命,靠着你这一两杆枪,你怎么完成,别给老板讲技能,他不懂,他只想要功效。 我们来看下豆瓣的 robots.txt。
看图片上面红框处,是两个 sitemap 文件 打开 sitemap_updated_index 文件看一下: 内里是一个个压缩文件,文件内里是豆瓣头一天新发生的影评,书评,帖子等等,感乐趣的可以去打开压缩文件看一下。 也就是说天天你只必要会见这个 robots.txt 里的 sitemap 文件就可以知道有哪些新发生的 URL。 不消去遍历豆瓣网站上那几亿个链接,极大节省了你的抓取时刻和爬虫计划伟大度,也低落了豆瓣网站的带宽耗损,这是双赢啊,哈哈。 上面通过 robots.txt 的 sitemap 文件找到了抓取一个网站新发生 URL 的偏方。沿着该思绪也能办剃头明网站大量 URL 的题目。 再举个栗子: 老板又给你一个使命,老板说前次抓豆瓣你说要大量 IP 才气搞定抓豆瓣天天新发生的帖子,这次给你 1000 个 IP 把天眼查上的几万万家企业工商信息抓取下来。 看着这么多 IP 你正留着口水,可是说明网站后发明这类网站的抓取进口很少(抓取进口是指频道页,聚合了许多链接的那种页面)。 很轻易就把储蓄的 URL 抓完了,干看着这么多 IP 事变不丰满。 假如一次机能找到这个网站几万以致几十万个 URL 放进待抓行列里,就可以让这么多 IP 事变丰满起来,不会偷懒了。 我们来看他的robots.txt文件:
打开红框处的 sitemap,内里有 3 万个公司的 URL,上图是 1 月 3 号天生的,谁人URL 是按照年代日天生的,你把 URL 改成 1 月 2 号,又能看到 2 号的sitemap里的几万个公司 URL,这样就能发明十几万个种子 URL 供你抓取了。 PS:上面的 sitemap 着实也能办理抓取天眼查最近更新的,新发生 URL 的题目。 小小的一个取巧,既低落了爬虫计划的伟大度,又低落了对方的带宽耗损。 这在事变中很是合用,事变中不会在意你用的框架多好,只在意你干事的快慢和优劣。 擅长看 robots.txt 文件你会发明一些别有洞天的对象。 【编辑保举】
点赞 0 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |