python爬蟲 requests異常

2021-09-27 07:55:35 字數 1415 閱讀 1150

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 列印結...