request使用

https版本告警问题,使用关闭告警,并且停止校验

requests.packages.urllib3.disable_warnings()


url = 'https://rcmsapi.chinacache.com/device/%s';; % Devname

res = requests.get(url,verify=False)

请求方式

requests.get(‘https://github.com/timeline.json’) #GET请求

requests.post(“http://httpbin.org/post”) #POST请求

requests.put(“http://httpbin.org/put”) #PUT请求

requests.delete(“http://httpbin.org/delete”) #DELETE请求

requests.head(“http://httpbin.org/get”) #HEAD请求

requests.options(“http://httpbin.org/get”) #OPTIONS请求

带参数请求

requests.get('http://www.dict.baidu.com/s';, params={'wd': 'python'})    #GET参数实例

requests.post('http://www.itwhy.org/wp-comments-post.php';, data={'comment': '测试POST'})    #POST参数实例

post json

r = requests.post('https://api.github.com/some/endpoint';, data=json.dumps({'some': 'data'}))

print(r.json())

定制header

data = {'some': 'data'}

headers = {'content-type': 'application/json',

           'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:22.0) Gecko/20100101 Firefox/22.0'}

r = requests.post('https://api.github.com/some/endpoint';, data=data, headers=headers)

print(r.text)

response

r.status_code #响应状态码

r.raw #返回原始响应体,也就是 urllib 的 response 对象,使用 r.raw.read() 读取

r.content #字节方式的响应体,会自动为你解码 gzip 和 deflate 压缩

r.text #字符串方式的响应体,会自动根据响应头部的字符编码进行解码

r.headers #以字典对象存储服务器响应头,但是这个字典比较特殊,字典键不区分大小写,若键不存在则返回None

#*特殊方法*#

r.json() #Requests中内置的JSON解码器

r.raise_for_status() #失败请求(非200响应)抛出异常

上传文件

url = 'http://127.0.0.1:5000/upload';

files = {'file': open('/home/lyb/sjzl.mpg', 'rb')}

#files = {'file': ('report.jpg', open('/home/lyb/sjzl.mpg', 'rb'))}     #显式的设置文件名

r = requests.post(url, files=files)

print(r.text)

超时与异常  timeout 仅对连接过程有效,与响应体的下载无关

requests.get('http://github.com';, timeout=0.001)

Traceback (most recent call last):

  File "<stdin>", line 1, in <module>

requests.exceptions.Timeout: HTTPConnectionPool(host='github.com', port=80): Request timed out. (timeout=0.001)

代理

proxie = {'http' : 'http://122.193.14.102:80'}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章