requests 模块
Requests常用操作
GET: requests.get(url="http://www.baidu.com") requests.get(url="http://www.baidu.com", params={"p":1}) POST: requests.post(url="http://www.baidu.com", json={"name": "alex"}) Content_type:application/json
也可以使用date=json.dumps(post_data)来替代
requests.post(url="http://www.baidu.com", data={"name": "alex"}) Content_type:application/x-www-form-urlencoded
Django补充:
request.POST 可能没有值
request.body 永远有值
Rquests参数进阶
Headers(头部封装,伪装浏览器): Content_type:application/json application/x-www-form-urlencoded files(POST文件上传) auth认证(FTP/路由器认证,基本认证) from request.auth import HTTPBasicAuth requests.get("url", auth=HTTPBasicAuth(username, password)) timeout(连接超时和相应超时) timeout(5, 10) allow_redirects(允许重定向) allow_redirects=False proxies(代理) from requests.auth import HTTPProxyAuth auth = HTTPProxyAuth("username", "password")
proxies = {"http": "61.172.249.96:80", "https": "http://61.185.219.126:3128"}
res = requests.get("http://www.google.com", proxies=proxy, auth=auth)
stream(以流的方式发送或接受数据)
stream=True
cookies(get或post时带上)
response.cookies.get_dict()
session(自动维护获取到的Cookie)
session = requests.Seesion()
session.get()
session.post()
更多用法参考:https://www.cnblogs.com/wupeiqi/articles/6283017.html