栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python自动化测试 :urllib2 发送HTTP Request

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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("http://www.baidu.com/")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("https://dynamic.12306.cn/otsweb/")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之一 

 

 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/224702.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号