Requests库从入门到放弃

Requests库从入门到放弃

一个很牛逼的http库,就这样子
1.get,post,cookie,header是什么还说么?直接上代码

2.安装requests库

pip install requests

3.get方法使用

import requests
r = requests.get('https://github.com/timeline.json')
print r.text

4.post方法使用
(1)普通post请求发送数据

import requests
#传递的数据用字典表示
payload = {'username':'xiaoming','password':'123456'}
r = requests.post('https://github.com/timeline.json',data=payload)
print r.text

(2)post请求发送文件(文件上传)

url = 'http://httpbin.org/post'
files = {'file': open('report.xls', 'rb')}
r = requests.post(url, files=files)
print r.text

5.返回值的说明

r.text
#Requests 会使用基于 HTTP 头部对响应的编码作出有根据的推测,就是编码好的文本内容

r.content
#Requests的返回二进制内容

r.json
#Requests的内置json解析器,如果返回的是json内容

6.定制请求头
为请求添加头部,给headers参数传递进去一个字典就好了

url = 'https://api.github.com/some/endpoint'
headers = {'user-agent': 'my-app/0.0.1'}
r = requests.get(url, headers=headers)
print r.text

7.返回状态码的说明

r = requests.get('http://httpbin.org/get')
print r.status_code

8.带cookie的请求

url = 'http://httpbin.org/cookies'
#working就是实际通过浏览器抓到的一大坨的cookie的东西,cookies_are是固定格式,必须写
cookies = dict(cookies_are='working')
r = requests.get(url, cookies=cookies)
print r.text

#获取响应中的cookie
url = 'http://example.com/some/cookie/setting/url'
r = requests.get(url)
print r.cookies['example_cookie_name']

9.超时(不管什么网络库都有超时对不对)

#timeout=5
#在经过以 timeout参数设定的秒数时间之后停止等待响应,抛异常
requests.get('http://github.com', timeout=5)

你可能感兴趣的:(Requests库从入门到放弃)