requests库的学习-python

request的请求方法

r = requests.get(url)
r = requests.post(url,data=xxx)
r = requests.put(url)
r = requests.delete(url)
r = requests.head(url)
r = requests.options(url)

代理认证

两种方式,字典形式

proxies = {
  "http": "http://127.0.0.1:8080",
  "https": "http://127.0.0.1:8080",
}#不论是http还是https都让其通过8080端口
proxies = {
    "http": "http://user:pass@10.10.1.10:3128/",
}#代理需要用户名密码的情况下

查看http状态码/响应码

http状态码(HTTP Status Code)

HTTP状态码分类

分类分类描述
1xx信息,服务器收到请求,需要请求者继续执行操作
2xx成功,操作被成功接收并处理
3xx重定向,需要进一步的操作以完成请求
4xx客户端错误,请求包含语法错误或无法完成请求
5xx服务器错误,服务器在处理请求的过程中发生了错误

常见http状态码

状态码描述
200请求成功
301资源(网页等)被永久转移到其它URL(网页跳转)
404请求的资源(网页等)不存在
500内部服务器错误
print r.status_code

重定向

r = requests.get(url, allow_redirects=False)

requests默认进行跳转

print r.history

history命令显示历史跳转次数

查看相应内容

print r.text

使用print r.text中文有可能出现乱码

print r.content

建议用content

修改系统默认编码格式

import sys
reload(sys)
sys.setdefaultencoding('utf-8')

查看请求头

print r.request.headers

响应包头

print r.headers

查看请求参数

print r.request.body

查看响应头

print r.headers

保存返回的结果

fh = open("abc.png", 'w')
fh.write(r.content)
fh.close()

查看返回的编码格式

print r.encoding

更改返回的编码格式

r.encoding = "utf-8"

添加header头

headers = {'user-agent': 'my-aasdasdaspp/0.0.1', 'asd':'hello world!'}

在请求过程中加上就好(字典形式)

修改cookie

cookies = dict(cookies_are='working')

获得响应头中的cookie

print r.cookies['domain']

如何发送post请求

payload = {'name': 'loop', 'age': '12'}
r = requests.post("http://httpbin.org/post", data=payload)

设置超时

r = requests.get(url, timeout=5)
r = requests.get(url, timeout=None)

使用session

conn = requests.session()
r = conn.get(url)
print r.request.headers
r = conn.get(url)
print r.request.headers

保存第一次的cookies

请求方法

r = requests.post(url, proxies=proxies, headers=headers, cookies=cookies, verify=False, data=payload)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值