python爬虫网络请求超时_Python网络爬虫编写5-使用代理,处理异常和超时
# coding=utf-8
”’
從同一個地址發出的http請求過多過頻繁,都可能被網站給封掉
要解決這個問題,就需要不停地更換代理
同時,如果在用urllib2訪問url的時候出現錯誤
可以用python的異常處理機制獲取錯誤內容
最后,urlopen可以指定一個timeout參數,用來設置超時時間
”’
from bs4 import BeautifulSoup #導入beautifulsoup
from lxml import etree
#from urllib2 import Request, urlopen, URLError, HTTPError
import urllib2
#設定訪問的代理服務器
#使用 urllib2.install_opener() 會設置 urllib2 的全局 opener
proxy_handler = urllib2.ProxyHandler({“http”: ‘http://1.183.125.230:24470/’})
opener = urllib2.build_opener(proxy_handler)
urllib2.install_opener(opener)
url = ‘http://www.csdn.com’ #你要爬取的網頁地址
req = urllib2.Request(url)
req.add_header(‘User-Agent’, ‘Mozilla/5.0 (Windows NT 6.1; rv:33.0) Gecko/20100101 Firefox/33.0’)
#處理訪問錯誤
try:
response = urllib2.urlopen(req, timeout=5)
except urllib2.URLError, e:
print “Failed to access url due to ” + e.reason
else:
the_page = response.read()
print the_page
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的python爬虫网络请求超时_Python网络爬虫编写5-使用代理,处理异常和超时的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 仿微信朋友圈项目梳理
- 下一篇: python两个同切圆_求两个圆的交点