概述
Python爬虫request方法
使用方法:requests.request(method,url,**kwargs)
- method:请求方式,对应get/put/post等七种方法;
- url:拟获取页面的url链接;
- kwargs:13个控制访问参数,为可选项(**表示可选):
- params:字典或字节序列,作为参数增加到url中。
- data:字典、字节序列或文件对象,作为向服务器提交资源使用。
- json:JSON格式的数据,作为Request的内容。
- headers:字典,HTTP定制请求头部信息。
- cookies:字典或CookieJar,解析Request中的cookie。
- auth:元祖,支持HTTP认证功能;
- files:字典类型,传输文件;
- timeout:设定超时时间,单位为秒;
- proxies:字典类型,设定发那个文代理服务器,可以增加登录认证;
- allow_redirects:True/False,默认为True,重定向开关。
- stream:True/False,默认为True,获取内容立即下载开关。
- verify:True/False,默认为True,认证SSL证书开关。
- cert:保存本地SSL证书路径。
【1】params
import requests
kv = {'key1': 'value1','key2': 'value2'}
r = requests.post('http://httpbin.org/post',params=kv)
print(r.url)
##http://httpbin.org/post?key1=value1&key2=value2
##[Finished in 0.7s]
【2】data
import requests
kv = {'key1': 'value1','key2': 'value2'}
r = requests.request('POST','http://httpbin.org/post',data=kv)
print(r.url)
body = '654456'
e = requests.request('POST','http://httpbin.org/post',data=body)
print(e.url)
##http://httpbin.org/post
##http://httpbin.org/post
##[Finished in 0.7s]
【3】json
import requests
kv = {'key1': 'value1'}
r = requests.request('POST','http://httpbin.org/post',json=kv)
print(r.url)
【4】headers
import requests
hd = {'user-agent': 'Chrome/10'}
r = requests.request('POST','http://httpbin.org/post',headers=hd)
print(r.request.headers)
##{'user-agent': 'Chrome/10', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Content-Length': '0'}
##[Finished in 0.7s]
注意:常用于模拟浏览器。
【5】files
import requests
fs = {'file': open('top_cpu.sh','rb')}
r = requests.request('POST','http://python123.io/ws',files=fs)
print(r.encoding)
print(r.request.headers)
注意:向某一个链接提交一个文件。
注意:在文本文件中,“回车”在不同的操作系统中,Windows=rn,linux=n,unix=r。
注意:Python,r为仅读取 w为仅写入,a为仅追加。open()文件,存在r、rb、rt模式;
注意:rt:会自动将rn转换成n;
注意:r:常用,但是在进行读取二进制文件时,可能会出现文档读取不全的现象;
注意:rb:按照二进制位进行读取,不会将读取的字符转换成字符。
【6】timeout
import requests
fs = {'file': open('top_cpu.sh','rb')}
r = requests.request('GET','http://www.baidu.com',timeout=1)
r.encoding = 'utf-8'
print(r.text)
注意:timeout为超时时间,未响应时,便会产生一个“requests.Timeout”异常。
### 【7】proxies
import requests
#pxs = {'http': 'http://user:pass@10.10.10.1:1234','https': 'https://10.10.10.1:4321'}
pxs = {'http':'http://192.168.30.56:9667'}
r = requests.request("GET",'http://www.baidu.com', proxies=pxs)
print(r.text)
注意:使用proxies可以很好的隐藏源IP地址,防止对爬虫的逆追踪。。
最后
以上就是老实棒球为你收集整理的Python爬虫request方法简介的全部内容,希望文章能够帮你解决Python爬虫request方法简介所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复