網絡爬蟲之網站背景調研

1. 檢查robots.txt

  大多數網站都會定義一robots.txt文件,這樣能夠了解爬取該網站時存在哪些限制,在爬取以前檢查robots.txt文件這一寶貴資源能夠最小化爬蟲被封禁的可能,並且還能發現和網站結構相關的線索。html

  輸入http://example.webscraping.com/robots.txt 咱們會看到如下內容:python

  

  section1:禁止用戶代理爲BadCrawler的爬蟲爬取網站web

  section2:規定不管使用任何的代理,都應該在兩次下載請求之間給出5秒的抓取延時,咱們應該聽從該建議避免服務器過載,Disllow:/trap表示禁止爬取/trap連接,若是訪問的畫,服務器將會封你的ipapi

  section3:  告訴了咱們一個網址,該網址內容能夠幫助咱們定位網站的最新內容服務器

2. 檢查網站地圖

  從robots.txt內容能夠看到,網站爲咱們提供了Sitemap網址,該網址能夠幫助咱們定位網站最新的內容,而無須爬取每個網頁,關於網站地圖標準協議能夠查看https://www.sitemaps.org/protocol.html,打開sitemap看看分佈式

  

  發現該網站地圖提供了全部網頁連接,雖然網站地圖文件提供了一種爬取網站的有效方式,可是咱們仍需對其謹慎處理,由於該文件常常存在缺失、過時或不完整的問題網站

3. 估算網站大小

  目標網站的大小會影響咱們如何進行爬取,若是網頁的數量級特別大,使用串行下載可能須要持續數月才能完成,這時就須要使用分佈式下載解決了ui

4. 識別網站技術

import builtwith
print(builtwith.parse("http://example.webscraping.com"))

5. 網站全部者

  pip install python-whoisspa

  以博客園爲例:代理

import whois
print (whois.whois("https://i.cnblogs.com"))

相關文章
相關標籤/搜索