request模块

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了request模块相关的知识,希望对你有一定的参考价值。

requests 模块发送post请求

post请求 data 参数携带字典
post(url, data=None, json=None, kwargs)
发送一个post请求
参数说明:
url:请求的url
data:传递查询的参数,可以是字典类型,也可以是bytes类型或者是文件对象。
json:传递的json数据
kwargs:可选请求参数
该方法返回一个reponse对象。

#coding=utf-8
import requests
payload = {"key1":"value1","key2":"value2"}#这是个字典
response = requests.post("http://httpbin.org/post",data=payload)
assert response.status_code == 200

print response.url
print response.text

post 请求json 参数携带json字符串

#coding=utf-8
import requests
import json
payload = {"name":"Lucy","sex":"male"}
print type(json.dumps(payload))
response = requests.post("http://httpbin.org/post",json=json.dumps(payload))
#以上把字典转换成json串,但是用data发送json也可以;
#response = requests.post("http://httpbin.org/post",data=json.dumps(payload))

assert response.status_code == 200

print response.url
print response.text

post 请求发送文件对象

#coding=utf-8
import requests

url = "http://httpbin.org/post"
file = {"file":open(r"c:\1.png","rb")}#字典参数

response = requests.post(url,files=file)

assert response.status_code == 200
print response.status_code
print response.url
#print response.content

post 请求携带头信息

#coding=utf-8
import requests
import json

url = ‘http://httpbin.org/post‘
payload = {‘name‘: ‘Lucy‘, ‘sex‘: ‘male‘}

headers = {‘content-type‘: ‘application/json‘}#字典参数
r = requests.post(url, data = json.dumps(payload), headers = headers)
print r.status_code

requests 模块发送put请求
put(url, data=None, kwargs)
发送一个put请求,和post类似
参数说明:
url:请求的url
data:传递查询的参数,可以是字典类型,也可以是bytes类型戒者是文件对象。
kwargs:可选请求参数
该函数也是返回一个response对象。

response 响应对象

response对象:通过request模块中的各个请求方法后,就会获得一个response对象,在这个response对象中存放着客户端请求后的一些请求信息。
常用方法:
?response.status_code
?response.headers
?response.text #响应正文
?response.cookies
?response. cookies[‘BAIDUID’] #获取某个cookie 值
?response.encoding
?response.json() #返回一个字典
?r.json()[‘data’][‘country’] #获取字典中的值
response.content

以上是关于request模块的主要内容,如果未能解决你的问题,请参考以下文章

django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE的解决办法(转)(代码片段

如何使用模块化代码片段中的LeakCanary检测内存泄漏?

C#-WebForm-★内置对象简介★Request-获取请求对象Response相应请求对象Session全局变量(私有)Cookie全局变量(私有)Application全局公共变量Vi(代码片段

Python练习册 第 0013 题: 用 Python 写一个爬图片的程序,爬 这个链接里的日本妹子图片 :-),(http://tieba.baidu.com/p/2166231880)(代码片段

如何有条件地将 C 代码片段编译到我的 Perl 模块?

推进学说代码片段