或
requests.exceptions.connectionerror:
httpconnectionpool(host=『www.sucaitianxia.net』, port=80): max retries exceeded with url: /e/search/result/index.p hp?page=418&searchid=14 (caused by newconnectionerror(』: failed to establish a new con nection: [winerror 10060] 由於連線方在一段時間後沒有正確答覆或連線的主機沒有反應,連線嘗試失敗。』,))
http的連線數超過最大限制,預設的情況下連線是keep-alive的,所以這就導致了伺服器保持了太多連線而不能再新建連線。ip被封,程式請求速度過快。
解決辦法如下:
第一種方法
try:
page1 = requests.get(ap)
except requests.exceptions.connectionerror:
r.status_code = "connection refused"
第二種方法:
request的連線數過多而導致max retries exceeded
在header中不使用持久連線
'connection': 'close'
或requests.adapters.default_retries = 5
第三種方法:
針對請求請求速度過快導致程式報錯。
import time
while 1:
try:
page = requests.get(url)
except:
print("connection refused by the server..")
print("let me sleep for 5 seconds")
print("zzzzzz...")
time.sleep(5)
print("was a nice sleep, now let me continue...")
continue
**: Python爬蟲 Request模組
文章說明了request模組的意義,且強調了request模組使用更加方便。接下來介紹幾種常用的request操作,並且會在後續補充說明一些特定用法。匯入檔案 import requests一 請求 右邊為請求語句,返回值為response回應 r requests.get r requests.p...
python爬蟲利器 request庫
request庫比urllib2庫更為高階,因為其功能更強大,更易於使用。使用該庫可以十分方便我們的抓取。基本請求 r requests.get r requests.post r requests.put r requests.delete r requests.head r requests.o...
爬蟲 python(二)初識request
from urllib.request import urlopen 傳送請求,獲取伺服器給的響應 url response urlopen url 讀取結果,無法正常顯示中文 html response.read 進行解碼操作,轉為utf 8 html decode html.decode 列印結...