Python自動化測試 :urllib2 傳送HTTP Request
urllib2 是Python自帶的標準模組, 用來傳送HTTP Request的。 類似於 .NET中的, HttpWebRequest類
urllib2 的優點
Python urllib2 發出的HTTP Request, 能自動被Fiddler截獲, 方便了除錯。
Python 可以自動處理Cookie
urllib2 的缺點
Python urllib2 發出的http Request, 中的header 會被修改成“首字母大寫”,
比如你的程式碼裡寫的header 是: content-TYPE=application/x-www-form-urlencoded , 會被修改為 Content-Type=application/x-www-form-urlencoded
例項一, Get方法, 並且自定義header
# -* - coding: UTF-8 -* - import urllib2request = urllib2.Request("")request.add_header('content-TYPE', 'application/x-www-form-urlencoded')response = urllib2.urlopen(request)print response.getcode()print response.geturl()print response.read()
例項二, post方法
# -* - coding: UTF-8 -* - import urllib2import urllibrequest = urllib2.Request("http://passport.cnblogs.com/login.aspx")request.add_header('content-TYPE', 'application/x-www-form-urlencoded')data={"tbUserName":"test_username", "tbPassword":"test_password"}response = urllib2.urlopen(request, urllib.urlencode(data))print response.getcode()print response.geturl()print response.read()
例項三: Cookie 的處理
# -* - coding: UTF-8 -* - import urllib2import urllibimport cookielibcj = cookielib.CookieJar()opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))request = urllib2.Request("")request.add_header('content-TYPE', 'application/x-www-form-urlencoded')data={"tbUserName":"test_username", "tbPassword":"test_password"}response = opener.open(request, urllib.urlencode(data))# send again, you will see cookie sent to web serverresponse = opener.open(request, urllib.urlencode(data))print response.getcode()print response.geturl()print response.read()
例項四:如何處理跳轉
建立Opener時, ul2.HTTPRedirectHandler是預設被加上的handler之一
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/200/viewspace-2811545/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【python介面自動化】- 使用requests庫傳送http請求PythonHTTP
- 【python3.x】傳送自動化測試報告郵件Python測試報告
- nodejs使用request傳送http請求NodeJSHTTP
- [python] request 介面測試自動化指令碼轉化為 [locust] 效能測試指令碼Python指令碼
- python自動化測試Python
- Python 介面自動化測試Python
- 使用 request 和 cheerio 庫來傳送 HTTP 請求HTTP
- python+pytest介面自動化傳送post請求Python
- Python 自動化測試框架unittestPython框架
- selenium+python自動化測試Python
- Python自動化測試框架-pytestPython框架
- python自動化測試-原創Python
- Python自動化測試Selenium+chrome連線HTTP代理全攻略PythonChromeHTTP
- 自動化測試系列 —— UI自動化測試UI
- DRF + vue + request + selenium 自動化測試平臺,它來了Vue
- python傳送HTTP POST請求PythonHTTP
- Python自動化測試框架介紹Python框架
- python 桌面應用自動化測試Python
- 『居善地』介面測試 — 9、介面自動化框架的傳送郵件實現框架
- python+pytest介面自動化(4)-requests傳送get請求Python
- Unittest單元測試框架——BeautifulReport測試報告和Yagmail自動傳送郵件框架測試報告AI
- 【自動化測試入門】自動化測試思維
- 基於Python豆瓣自動化測試【2】Python
- 用python實現selenium 自動化測試Python
- Jmeter+Ant+Python 介面自動化測試JMeterPython
- Python自動化測試~PO模型封裝Python模型封裝
- python自動化測試(一)--uiautomator總結PythonUI
- Python自動化測試框架有哪些?Python入門!Python框架
- Python3實現自動傳送MySql查詢併傳送郵件PythonMySql
- http介面測試工具,cookie自動追加HTTPCookie
- Python自動化測試怎麼學?軟體測試進階Python自動化,收藏這篇文章就夠了Python
- 自動化裝置測試與自動化測試的區別
- 如何做自動化測試?什麼是自動化測試?
- 介面自動化測試錄製工具,讓python selenium自動化測試指令碼開發更加方便Python指令碼
- 軟體測試:自動化測試
- 搭建appium+python自動化測試環境APPPython
- Python 自動化測試 必會模組 UnittestPython
- python+appium+pytest做app自動化測試PythonAPP