python访问web网页_python访问web的利器:urllib2
使用Python訪問網頁主要有三種方式: urllib, urllib2, httplib
urllib比較簡單,功能相對也比較弱,httplib簡單強大,但好像不支持session
1. 最簡單的頁面訪問
res=urllib2.urlopen(url)
print res.read()
2. 加上要get或post的數據
data={"name":"hank", "passwd":"hjz"}
urllib2.urlopen(url, urllib.urlencode(data))
3. 加上http頭
header={"User-Agent": "Mozilla-Firefox5.0"}
urllib2.urlopen(url, urllib.urlencode(data), header)
使用opener和handleropener = urllib2.build_opener(handler)
urllib2.install_opener(opener)
4. 加上session
cj = cookielib.CookieJar()
cjhandler=urllib2.HTTPCookieProcessor(cj)
opener = urllib2.build_opener(cjhandler)
urllib2.install_opener(opener)
5. 加上Basic認證
password_mgr = urllib2.HTTPPasswordMgrWithDefaultRealm()
top_level_url = "http://www.163.com/"
password_mgr.add_password(None, top_level_url, username, password)
handler = urllib2.HTTPBasicAuthHandler(password_mgr)
opener = urllib2.build_opener(handler)
urllib2.install_opener(opener)
6. 使用代理
proxy_support = urllib2.ProxyHandler({"http":"http://1.2.3.4:3128/"})
opener = urllib2.build_opener(proxy_support)
urllib2.install_opener(opener)
7. 設置超時
socket.setdefaulttimeout(5)
參考:http://svn.python.org/projects/python/trunk/Doc/howto/urllib2.rst
總結
以上是生活随笔為你收集整理的python访问web网页_python访问web的利器:urllib2的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ctrl键一直自动按住了_请允许Ctrl
- 下一篇: python打包exe不弹窗_Pyins