python Requests 文档

来源:互联网 发布:2016全球华人网络春晚 编辑:程序博客网 时间:2024/06/08 07:43

转载自:http://blog.csdn.net/sofeien/article/details/50819452

网址:http://cn.python-requests.org/zh_CN/latest/


import requests
import json

#发送POST请求
#r = requests.post("http://httpbin.org/post")

#发送其他类型请求
#r = requests.put("http://httpbin.org/put")
#r = requests.delete("http://httpbin.org/delete")
#r = requests.head("http://httpbin.org/get")
#r = requests.options("http://httpbin.org/get")

#传递参数的GET请求
#payload = {'key1': 'value1', 'key2': 'value2'}
#r = requests.get("http://httpbin.org/get", params=payload)
#print(r.url)

#查看相应内容,会自动解码
#print(r.text)

#查看,指定URL编码
#print(r.encoding)
#r.encoding = 'ISO-8859-1'

#以字节方式访问相应,会自动解码gzip和deflate压缩的数据
#print(r.content)

#创建图片
#from PIL import Image
#from io import StringIO
#i= Image.open(StringIO.StringIO(r.content))

#处理JSON数据
#import requests
#r=requests.get('https://github.com/timeline.json')
#print(r.json())

#返回原始相应内容
##>>> r = requests.get('https://github.com/timeline.json', stream=True)
##>>> r.raw
##<requests.packages.urllib3.response.HTTPResponse object at 0x101194810>
##>>> r.raw.read(10)
##'\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\x03'

#保存文本,针对返回原始内容byte
##with open(filename, 'wb') as fd:
##    for chunk in r.iter_content(chunk_size):
##        fd.write(chunk)

#添加头部
##>>> import json
##>>> url = 'https://api.github.com/some/endpoint'
##>>> payload = {'some': 'data'}
##>>> headers = {'content-type': 'application/json'}
##
##>>> r = requests.post(url, data=json.dumps(payload), headers=headers)

#账号密码登陆
#r = requests.get('https://api.github.com/user', auth=('user', 'pass'))

#发送表单数据
##paylaod={"key1":"value1","key2":"value2"}
##r=requests.post("http://httpbin.org/post",data=paylaod)
##print(r.text)

#发送string数据
##import json
##payload={"key1":"value1","key2":"value2"}
##r=requests.post("http://httpbin.org/post",data=json.dumps(payload))
##print(r.text)

#发送文件
##url='http://httpbin.org/post'
##files={'file':open('report.xls','rb')}
#显式设置文件名,文件类型,请求头:
##files={'file': ('report.xls', open('report.xls', 'rb'), 'application/vnd.ms-excel', {'Expires': '0'})}
#发送文件形式的字符串
##files={'file': ('report.csv', 'some,data,to,send\nanother,row,to,send\n')}
##r=requests.post(url,files=files)
##print(r.text)

#检测响应码
##r=requests.get('http://httpbin.org/get')
##print(r.status_code)
##print(r.status_code==requests.codes.ok)
##bad_r = requests.get('http://httpbin.org/status/404')
##print(bad_r.status_code)
##bad_r.raise_for_status()

#响应头
##r=requests.get('http://httpbin.org/get')
##print(r.headers)
##print(r.headers['date'])

#cookies
##url='http://example.com/some/cookie/setting/url'
##r=requests.get(url)
##print(r.cookies['example_cookie_name'])  #报错

#发送cookies
##url = 'http://httpbin.org/cookies'
##cookies = dict(cookies_are='working')
##r = requests.get(url, cookies=cookies)
##print(r.text)

#重定向
##r=requests.get('http://github.com')
##print(r.url)
##print(r.history)

#超时处理
##requests.get('http://github.com',timeout=1)

#跨请求保存cookies
##s = requests.Session()
##s.get('http://httpbin.org/cookies/set/sessioncookie/123456789')
##r = s.get("http://httpbin.org/cookies")
##print(r.text)

#请求保存缺省数据
##s = requests.Session()
##s.auth = ('user', 'pass')
##s.headers.update({'x-test': 'true'})
### both 'x-test' and 'x-test2' are sent
##r=s.get('http://httpbin.org/headers', headers={'x-test2': 'true'})
##print(r.text)

#简单获取请求头部和返回头部
##url='http://www.baidu.com/'
##r=requests.get(url)
#返回头部
##print(r.headers)
#请求头部
##print(r.request.headers)

#设置SSL证书
#requests.get('https://kennethreitz.com', cert=('/path/server.crt', '/path/key'))


原创粉丝点击