[Python] 爬蟲修改User-Agent標頭

爬蟲是一個很方便的工具,可以大量分析網頁,把別人的網頁當作自己資料庫,但也因為如此,有些網頁會偵測連線來源是否為爬蟲工具,若是的話則會擋掉,有些則是會秀出與平時使用時不一樣的內容。

(使用工具:python 3.8.5)
  1. python爬蟲第一步都是使用「requests」這個 package,它內建的請求標頭「User-Agent」為「python-requests/2.24.0」,也許版本會不同,但一看就知道是程式而不是真的使用者的連線請,所以應用程式可根據這個線索來抵檔
  2. 但「道高一尺,魔高一丈」不是沒有道理的,只要我們改了「User-Agent」,就能繞過根據這個線索去過濾的網站
    import requests
    
    headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36"}
    
    url = "http://abcde.example.com"
    response = requests.get(url, headers = headers)
    
  3. 這時,所有的請求標頭「User-Agent」都改為「Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36」了

留言

這個網誌中的熱門文章

[Hyper-V] 讓 Windows 可以吃到超過 16TB 的硬碟!