Requests库学习(3):Requestests库主要方法解析

1. 主要方法

requests.request(method, url, **kwargs)

  • method:请求方式,对应get/put/post等七种
  • url:拟获取页面的url链接
  • ** kwargs:控制访问的参数,共13个

注:以下两个语句作用完全相同

# 1:
r = requests.request('GET', 'http://www.baidu.com')
# 2:
r = requests.get('http://www.baidu.com')

2其实就是通过1来进行封装而成的

2. request方法13个参数解析

**kwargs中共有13个控制访问的参数,均为可选项

  • params: 字典或字节序列,作为参数增加至url中

例:

import requests
kv = {'key1': 'value1', 'key2': 'value2'}
r = requests.request('GET', 'https://python123.io/ws', params=kv)
print(r.url)

运行结果为:

https://python123.io/ws?key1=value1&key2=value2

显然,将kv的键值对增加近到了请求的url中

  • data:字典、字节序列或文件对象,作为Request的内容

例:

import requests
kv = {'key1': 'value1', 'key2': 'value2'}
r = requests.request('POST', 'http://python123.io/ws', data=kv)

使用POST,那么kv中的键值对不会将其放到url中,而是作为url的数据进行存储,不会在url中显示出来。

  • json:JSON格式的数据,作为Request的内容

例:

import requests
kv = {'key1': 'value1'}
r = requests.request('POST', 'http://python123.io/ws', json=kv)
  • headers:字典,HTTP定制头

例:

import requests
hd = {'user-agent': 'Chrome/10'}
r = requests.request('POST', 'http://python123.io/ws', headers=hd)

此时,再像服务器访问时,服务器看到的是Chrome10浏览器进行的访问。
这样我们可以模拟任何我们想模拟的浏览器,向服务器发起访问。

  • cookies:字典或CookieJar,Request中的cookie
  • auth:元祖,支持HTTP认证功能
  • files:字典类型,传输文件

例:

import requests
fs = {'file': open('data.xls', 'rb')}
r = requests.request('POST', 'http://python123.io/ws', files=fs)

可用于向某一个链接提交某一个文件。

  • timeout:设定超时时间,以秒为单位

例:

import requests
r = requests.request('GET', 'http://python123.io/ws', timeout=10)
  • proxies:字典类型,设定访问代理服务器,可以增加登录认证

例:

import requests
pxs = {'http': 'http://user:pass@10.10.10.,:1234',
       'https': 'https://10.10.10.1:4321'}
r = requests.request('GET', 'http://www.baidu.com', proxies=pxs)

可以用来隐藏爬取网页的用户原理的IP地址信息,能够防止对爬虫的逆追踪

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

3. get方法与request方法比较

get方法其实就是对request方法的封装。

get方法的完整形式:

requests.get(url, params=None, **kwargs)

注:

  • **kwargs:有12个控制访问的参数。
  • params加上**kwargs,共13个参数,和request方法中的参数相同。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值