在官網后綴添加robots.txt 網站的根路徑/robots.txt
User-agent: * Disallow: /?* Disallow: /pop/*.html Disallow: /pinpai/*.html?* User-agent: EtaoSpider Disallow: / User-agent: HuihuiSpider Disallow: / User-agent: GwdangSpider Disallow: / User-agent: WochachaSpider Disallow: /
第一行*表示所有的,也就是說,對於所有的網絡爬蟲,它都定義為User-agent
意思就是說對於所有的網絡爬蟲,都應該遵守這個協議。
第二行什么意思呢?disallow表示不允許,?后面是*,表示?后面所有的東西,也就是說,它不允許任何爬蟲訪問任何以?開頭的路徑。
第三行表示任何爬蟲都不允許訪問pop/開頭的路徑。
第四行同理,符合這類的路徑也不允許訪問。
后面的又寫了四個爬蟲,EtaoSpider等等
他們被禁止的是根目錄。這四種爬蟲不允許爬取京東的任何資源。
也就是說這四種爬蟲被京東定義為惡意爬蟲,非法的獲取過京東的資源,所以京東不允許這四類爬蟲獲取京東的任何資源了。
對於不遵守robots協議的爬蟲,可能會存在法律風險。
不是所有網站都有robots協議,比如一些網站就沒有robots協議,它就默認為所有網絡爬蟲都可以無限制的去爬取這個網站。
import requests def getHTTPXML(url): try: r = requests.get(url, timeout=30) r.raise_for_status() r.encoding = r.apparent_encoding return r.text except: return "產生異常" if __name__ == "__main__": url = "https://www.taobao.com/robots.txt" print(getHTTPXML(url))
淘寶