requests 模块用于发送HTTP请求,并对请求信息进行简单处理。

7个主要方法

① requestrequests.request(method, url, **kwargs):构造一个请求,支撑以下各方法的基础方法。method :请求方式,对应get/post等 url :网页链接 **kwargs :关键字参数,可选,共13个② getrequests.get(url, params, **kwargs):从指定的资源请求数据,是获取HTML网页信息的主要方法,对应HTTP的GET。params :字典或字节序列格式,将作为参数增加到url中,可选③ postrequests.post(url, data, json, **kwargs):向指定的资源提交要被处理的数据,对应HTTP的POST。data :data参数的对象一般是字典类型,在发出请求时会自动编码为表单形式json :json参数会自动将字典类型的对象转换为json格式④ headrequests.head(url, **kwargs):获取HTML网页头部信息的方法,对应HTTP的HEAD。⑤ putrequests.put(url, data, **kwargs):向HTML网页提交PUT请求的方法,对应HTTP的PUT。⑥ patchrequests.patch(url, data, **kwargs):向HTML网页提交局部修改请求,对应于HTTP的PATCH。⑦ deleterequests.delete(url, **kwargs):向HTML页面提交删除指定资源的请求,对应HTTP的DELETE。

13个关键字参数

**kwargs:控制访问的参数,均为可选项。

1)params
字典或字节序列格式,将作为参数增加到url中。




python 获取跳转url python提取url参数_HTTP


2)data
data参数的对象一般是字典类型,在发出请求时会自动编码为表单形式。也可以是字节序列或文件对象,作为Request的内容。


python 获取跳转url python提取url参数_获取url参数_02


3)json
JSON格式的数据,作为Request的内容。json参数会自动将字典类型的对象转换为json格式。


python 获取跳转url python提取url参数_HTTP_03


4)headers
字典格式,为请求添加 HTTP 头部信息,模拟浏览器进行访问。headers是解决requests请求反爬的方法之一。 headers中有很多内容,常用的是user-agent 和 host。


python 获取跳转url python提取url参数_获取url参数_04


5)cookies
cookies参数为字典格式的数据或CookieJar什么是cookie?
当用户通过浏览器首次访问一个域名时,访问的web服务器会给客户端发送数据,这些数据就是cookie,它是为了辨别用户身份而储存在用户本地终端上的数据。cookie大部分都是加密的,cookie存在于缓存中或者硬盘中,在硬盘中的是一些文本文件,当访问该网站时,就会读取对应的网站的cookie信息。一般来说,一旦将cookie保存在计算机上,则只有创建该cookie的网站才能读取它。


python 获取跳转url python提取url参数_python 获取跳转url_05


6)auth
身份验证。将用户名和密码以元组形式传递给auth参数时,rqeuests 将使用HTTP的认证功能来应用凭据。


python 获取跳转url python提取url参数_获取url参数_06


7)files
传输文件。支持在一个请求中发送多个文件。


python 获取跳转url python提取url参数_HTML_07


8)timeout
用于解决请求超时的问题。以秒为单位限制请求时间,如果服务器在设定的请求时间内没有应答,将引发一个异常。9)proxies
字典类型,设定访问代理服务器,可以增加登陆认证。


python 获取跳转url python提取url参数_python 获取跳转url_08


10)allow_redirects
重定向开关:True / False。默认为True,允许重定向;False禁止重定向。


python 获取跳转url python提取url参数_HTTP_09


什么是重定向?


python 获取跳转url python提取url参数_HTML_10


11)stream
获取内容立即下载开关:True / False,默认为True。12)verify
请求验证SSL证书开关:True / False,默认为True。13)cert
本地SSL证书路径。用于指定一个本地有效安全证书作为客户端证书。


python 获取跳转url python提取url参数_HTTP_11


响应对象的5种属性

① r.status_code
HTTP请求的返回状态,200为正常,404为错误。② r.raw
HTTP响应内容的原始形式。③ r.text
HTTP响应内容的字符串形式,即url对应的页面内容。获取文本一般使用 r.text。④ r.content
HTTP响应内容的字节形式(二进制形式 )。获取图片或文件一般使用 r.content。⑤ r.encoding
HTTP响应正文的编码,它的值可能是从HTTP响应头部或正文中解析出来的。
当解析的编码方式不准确时,可以手动指定一种编码方式。如,r.encoding = ' utf-8 ' 。

get 和 post 请求方式的区别


python 获取跳转url python提取url参数_获取url参数_12


扩展知识:HTTP

HTTP(Hypertext Transfer Protocol),超文本传输协议,是一种建立在TCP上的无状态连接,整个基本的工作流程是客户端发送一个请求,说明客户端想要访问的资源和请求的动作,服务端收到请求之后开始处理请求,并根据请求做出相应的动作访问服务器资源,最后把响应结果返回给客户端。
HTTP协议采用URL作为定位网络资源的标识。

------------------- End -------------------