基本库的使用——urllib&requests

一、request模块

HTTP请求模块,可以用来模拟发送请求。

urlopen()实现最基本请求的发起
Request类可以设置data,headers,method等
Opener

Opener可以使用open()方法,返回类型和urlopen差不多,

利用Handler来构建

二、error模块

异常处理模块

URLError是error异常模块的基类,由request模块生的异常都可以通过捕获这个类来处理
HTTPError

是URLError的子类,专门处理HTTP请求错误,比如认证请求失败

code,reason,headers

 

三、parse

工具模块,实现URL各部分的抽取,合并以及链接转换

urlparse()

该方法可以实现URL的识别和凤duan

返回结果是一个ParseResult 类型的对象,它包含6 个部分,分别是scheme 、netloc 、path 、params 、query 和fragment 

urlunparse()实现URL 的构造
urlsplit()这个方法和urlparse ()方法非常相似,只不过它不再单独解析pa rams 这一部分,只运回5 个结果。上面例子中的para ms 会合并到path 中
urlunsplit()与urlunparse()类似
urljoin()我们可以提供一个base_url(基础链接)作为第一个参数,将新的链接作为第二个参数,该方法会分析base_url 的scheme 、netloc 和path这3 个内容并对新链接缺失的部分进行补充,最后返回结果
urlencode()将事先定义的字典序列化为GET 请求参数。
 
parse_qs()有了序列化,必然就有反序列化。转回字典
parse_qsl()于将参数转化为元组组成的列表
quote()将内容转化为URL 编码的格式
unquote()进行URL 解码

------------------------------------------------------------------------------------------------------------------------------------------------------------------

了解了urllib 的基本用法,但是其中确实有不方便的地方,比如处理网页验证和Cookies 时,需要写Opener和Handler来处理。为了更加方便地实现这些操作,就有了更为强大的库requests。

基本用法

get()

对应urllib中的urlopen().

构建参数:params,headers

post()提交的数据存储在data中
响应

text,content获取响应内容,status_code,headers,cookis等

高级用法

文件上传requests.post(”http://httpbin.org/post”, files=files)
Cookies

获取:print(r.cookies)

设置:设置到Headers

Session利用Session ,可以做到模拟同一个会话而不用担心Cookies 的问题。它通常用于模拟登录成功之后再进行下一步的操作。
SSL 证书验证使用veri干y 参数控制是否检查此证书
代理设置用到proxies 参数
超时设置用到timeout 参数。这个时间的计算是发归请求到服务器返回响应的时间
身份认证 
Prepared Request 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值