urllib2獲取CGI請求的數據
阿新 • • 發佈:2019-04-04
模塊 數據 open rdquo ima 參數 author 版本 -a
import urllib.request as urllib2 headers = { ‘Authorization‘: ‘Basic YWRtaW46YWRtaW4=‘, }#需要身份驗證時,在請求時加一個headers,模擬IE瀏覽器提交請求 url = ‘http://10.82.21.210/cgi/sys_get?Group=DeviceInfo‘ # 查看版本號 resp = urllib2.Request(url,headers=headers) response = urllib2.urlopen(resp) html = response.read() b = str(html).split("<Firmware><string>") result = b[1].split("</string></Firmware>") version = result[0] # 版本號 print(version)
支持需要身份驗證的請求的模塊有以下幾個:httplib2,urllib2,requests,pycurl
headers——是字典類型,頭字典可以作為參數在request時直接傳入,也可以把每個鍵和值作為參數調用add_header()方法來添加。
作為辨別瀏覽器身份的User-Agent header是經常被用來惡搞和偽裝的,因為一些HTTP服務只允許某些請求來自常見的瀏覽器而不是腳本,或是針對不同的瀏覽器返回不同的版本。
例如,Mozilla Firefox瀏覽器被識別為“Mozilla/5.0 (X11; U; Linux i686) Gecko/20071127 Firefox/2.0.0.11”。
默認情況下,urlib2把自己識別為Python-urllib/x.y(這裏的xy是python發行版的主要或次要的版本號,如在Python 2.6中,urllib2的默認用戶代理字符串是“Python-urllib/2.6。
urllib2獲取CGI請求的數據