码迷,mamicode.com
首页 > 编程语言 > 详细

python—网络爬虫(Requests库主要方法解析)

时间:2018-08-01 23:56:35      阅读:628      评论:0      收藏:0      [点我收藏+]

标签:选项   nbsp   **kwargs   数据   时间   构造   完全   .com   put   

Requests库主要方法解析
requests.request() 构造一个请求,支撑以下各方法的基础方法

requests.request(method, url, **kwargs)
method: 请求方式,对应get/put/post等七种
url:拟获取页面的url链接
**kwargs: 控制访问的参数共13个。
  requests.request(‘GET‘, url, **kwargs)
  requests.request(‘HEAD‘, url, **kwargs)
  requests.request(‘POST‘, url, **kwargs)
  requests.request(‘PUT‘, url, **kwargs)
  requests.request(‘PATCH‘, url, **kwargs)
  requests.request(‘DELETE‘, url, **kwargs)
  requests.request(‘OPTIONS‘, url, **kwargs)
其中,OPTIONS只是一种与http通信的一个参数,与http协议无关,通常很少用到

requests.request(method, url, **kwargs)
**kwargs: 控制访问的参数,均为可选项
params: 字典或字节序列,作为参数增加到url中
>>> kv={‘key1‘:‘value1‘,‘key2‘:‘value2‘}
>>> r=requests.request(‘GET‘,‘http://python123.io/ws‘,params=kv)
>>> print(r.url)
http://python123.io/ws?key1=value1&key2=value2

data:字典、字节序列或文件对象,作为Request的内容
>>> kv={‘key1‘:‘value1‘,‘key2‘:‘value2‘}
>>> r=requests.request(‘POST‘,‘http://python123.io/ws‘,data=kv)
>>> body=‘主体内容‘
>>> r.requests.request(‘POST‘,‘http://python123.io/ws‘,data=body)

json:JSON格式的数据,作为Request的内容
>>> kv={‘key1‘:‘value1‘}
>>> r=requests.request(‘POST‘,‘http://python123.io/ws‘,json=kv)

headers:字典,HTTP定制头
>>>hd={‘user-agent‘:‘Chrome/10‘}
>>>r=requests.request(‘POST‘,‘http://python123.io/ws‘,headers=hd)

cookies:字典或CookieJar, Request中的cookie
auth:元组,支持HTTP认证功能
files:字典类型,传输文件
>>>fs={‘file‘:open(‘data.xls‘,‘rb‘)
>>>r=requests.request(‘POST‘,‘http://python123.io/ws‘, files=fs)

timeout:设定超时间,秒为单位
>>>r=requests.request(‘GET‘,‘http://www.baidu.com‘,timeout=10)

proxies:字典类型,设定访问代理服务器,可以增加登录认证
>>>pxs={‘http‘:‘http://user:pass@10.10.10.1:1234‘, ‘https‘:‘https://10.10.10.1:4321‘ }
>>>r=requests.request(‘GET‘,‘http://www.baidu.com‘,proxies=pxs)

allow_redirects: True/False, 默认为True, 重定向开关
stream: True/False,默认为True,获取内容立即下载开关
varify:  True/False,默认为True,认证SSL证书开关
cert:本地SSL证书路径

requests.request(method,url,**kwargs)
**kwargs:控制访问的参数(13个),均为可选项
params
data
json
headers
cookies
auth
files
timeout
proxies
allow_redirects
stream
verify
cert

requests.get(url, params=None,**kwargs)
url:拟获取页面的url链接
params:url中的额外参数,字典或字节流格式,可选。
**kwargs: 12个控制访问参数(就是request里面对应的除了params参数之外的对应参数)

requests.head(url,**kwargs)
url:拟获取页面的url链接
**kwargs:13个控制访问的参数(与request完全一样)

requests.post(url,data=None, json=None,**kwargs)
url:拟获取页面的url链接
data:字典、字节序列或文件,Request的内容
json:JSON格式的数据,Request的内容
**kwargs:11个控制访问的参数

requests.put(url,data=None,**kwargs)
url:拟获取页面的url链接
data:字典、字节序列或文件,Request的内容
**kwargs: 12个控制访问参数。

requests.patch(url,data=None,**kwargs)
url:拟获取页面的url链接
data:字典、字节序列或文件,Request的内容
**kwargs:12个控制访问参数。

requests.delete(url,**kwargs)
url:拟获取页面的url链接
**kwargs:13个控制访问的参数。

python—网络爬虫(Requests库主要方法解析)

标签:选项   nbsp   **kwargs   数据   时间   构造   完全   .com   put   

原文地址:https://www.cnblogs.com/cindy-zl24/p/9404202.html

(0)
(1)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!