python爬虫入门——requests库

一 requests库的基本方法:

requests.request()     构造一个请求, 支撑以下各方法的基础方法
requests.get()    获取HTML网页的主要方法, 对应于HTTP的GET
requests.head()    获取HTML网页头信息的方法, 对应于HTTP的HEAD
requests.post()    向HTML网页提交POST请求, 对应于HTTP的POST
requests.put()    向HTML网页提交PUT请求, 对应于HTTP的PUT
requests.patch()    向HTML网页提交局部更新请求, 对应于HTTP的patch
requests.delete()    向HTML网页提交删除请求, 对应于HTTP的delete

语法如下:
requests.request(method, url, **kwargs)
method : 请求方式,对应get/put/post等
URL:拟获取页面的URL链接
**kwargs: 控制访问的参数,共13个
method:
r = requests.request(‘GET’, url, **kwargs)

     r = requests.request('HEAD', url, **kwargs)

     r = requests.request('POST', url, **kwargs)

     r = requests.request('PUT', url, **kwargs)

     r = requests.request('PATCH', url, **kwargs)

     r = requests.request('DELETE' , url. **kwargs)

     r = requests.request(''OPTIONS', url, **kwargs)   向服务器获取服务器可以和客户端打交道的参数(用到的较少)     

**kwargs:控制访问的参数,均为可选项

  • params: 字典或字节序列, 作为参数增加到url中,使用这个参数可以把一些键 值对以{key1=value1&key2=value2}的模式增加到url
    例如:kv = {‘key1: ’ values’, ‘key2’: ‘values’}
    r = requests.request(‘GET’, ‘http:www.python123.io/ws’, params=kw)

  • data:字典,字节序列或文件对象
    例如:kw = {‘key1: ’ values’, ‘key2’: ‘values’}
    r = requests.request(‘POST’, ‘http:www.python123.io/ws’, data=kw)
    body=’主体内容’
    r = requests(‘POST’,’http:www.python123.io/ws’, data=body)

    ⚠️与params不同的是,data提交的数据并不放在url链接里, 而是放在url链接对应位置的地方作为数据来存储。,它也可以接受一个字符串对象。

  • JSON: json格式的数据
    例如:kw = {‘key1: ’ values’, ‘key2’: ‘values’}
    r = requests.request(‘POST’, ‘http:www.python123.io/ws’, json=kw)

  • headers:字典,HTTP定制头。对应了向某个url访问时所发起的http的头字段, 可以用这个字段来定义http的访问的http头,可以用来模拟任何我们想模拟的浏览器来对url发起访问。
    hd = {‘user-agent’: ‘Chrome/10’}
    r = requests.request(‘POST’, ‘http://python123.io/ws‘, headers=hd)

  • cookies:字典或CookieJar,指的是从http中解析cookie

  • auth:元组,用来支持http认证功能
  • files:字典, 是用来向服务器传输文件时使用的字段。
    例子:fs = {‘files’: open(‘data.txt’, ‘rb’)}
    r = requests.request(‘POST’, ‘http://python123.io/ws‘, files=fs)

    -timeout: 用于设定超时时间, 单位为秒,当发起一个get请求时可以设置一个timeout时间, 如果在timeout时间内请求内容没有返回, 将产生一个timeout的异常。

  • proxies:字典, 用来设置访问代理服务器,可以增加登陆认证
    例如:pxs = {‘http’:’http://usr:[email protected]
    ‘https’:’http://usr:[email protected]}#https隐藏自己的IP, 防止爬虫逆追踪
    r = requests.request(‘GET’,’http://python123.io/ws‘,proxies=pxs)

  • allow_redirects: 开关, 表示是否允许对url进行重定向, 默认为True。

    stream: 开关, 指是否对获取内容进行立即下载, 默认为True。

    verify:开关, 用于认证SSL证书, 默认为True。

    cert: 用于设置保存本地SSL证书路径

猜你喜欢

转载自blog.csdn.net/NKidult/article/details/82149757