fake-usergent報錯一勞永逸解決辦法

處理fake-useragent報錯

1. 報錯如下:

fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached

原因:fake-useragent能夠給我們這麼多用戶代理,其實質上是它訪問了一個網站,如果訪問網站失敗達到最大重試次數,那麼就會報這樣的錯誤。我們只需要訪問該網站並將網站中的數據保存到本地即可。

網站爲:https://fake-useragent.herokuapp.com/browsers/0.1.11

在這裏插入圖片描述
2. 解決辦法:
訪問此網站,並將返回的數據保存爲json文件並放在系統的臨時目錄中。

  1. 訪問網站並保存數據,保存的路徑在代碼的同級路徑下,若有訪問不了此網站的,我提供了百度網盤的下載鏈接。

    鏈接: 下載鏈接
    提取碼:ak2i

import requests

headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36'}
res = requests.get('https://fake-useragent.herokuapp.com/browsers/0.1.11', headers=headers)
with open('fake_useragent_0.1.11.json', 'w', encoding='utf-8')as f:
    f.write(res.text)
    print('保存完畢')
  1. 查看本系統的臨時文件夾,我係統的臨時文件夾爲
    路徑:C:\Users\ADMINI~1\AppData\Local\Temp
import tempfile

print(tempfile.gettempdir())
  1. 先顯示隱藏文件夾,再將下載的json文件放在系統的臨時文件夾裏面即可
    在這裏插入圖片描述
    在這裏插入圖片描述

3.測試結果
原因:因爲我們已經用戶代理的json文件保存到本地了,所以相當於之後發送的請求fake-useragent都會先檢查我們電腦是否有此文件,若沒有則去請求網站。

斷網後的測試結果
在這裏插入圖片描述

結語:本章小知識點在這裏就結束了。期望大家能夠學到知識並將知識運用到實際當中,fake-useragent的主要作用就是產生不同的用戶代理,這樣我們就不需要再去網上收集用戶代理保存到一個列表或py文件中。再使用random模塊中的choice方法去隨機選擇了,會使我們方便很多。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章