Python爬虫——Requests库的基本方法

Requests库安装

Requests是用python语言基于urllib编写的,采用的是Apache2 Licensed开源协议的HTTP库。简单的爬虫一般使用Requests库编写。

使用pip安装Requests:

pip install requests

Requests库的基本方法

方法说明
requests.request()构造一个请求,支撑以下各方法的基础方法
requests.get()获取HTML网页的主要方法
requests.head()获取HTML网页头部信息
requests.post()向HTML网页提交POST请求的方法
requests.put()向HTML网页提交PUT请求的方法
requests.patch()向HTML网页提交局部修改请求
requests.delete()向HTML网页提交删除请求

get方法

r=requests.get(url)

参数:

  • r.status_code:200表示成功,其他数字为失败
  • r.encoding:编码方式
  • r.apparent_encoding:备选编码方式
  • r.text:html内容

例子:

import requests
url = 'http://baidu.com/s?wd='+'爬虫'
response = requests.get(url)
print(response.status_code) # 200
print(response.text)

post方法

r = requests.post(url,data={请求体的字典})

参数:

  • r.status_code:200表示成功,其他数字为失败
  • r.encoding:编码方式
  • r.apparent_encoding:备选编码方式
  • r.text:html内容

例子:

import requests
url = 'https://fanyi.baidu.com'
data = {'from': 'zh',
        'to': 'en',
        'query': '人生苦短,我用python'
        }
response = requests.post(url, data=data)
print(response.status_code)  # 200
print(response.encoding)  # utf-8
print(response.apparent_encoding)  # utf-8
print(response.text)

requests方法

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

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中
import requests
kv = {'key1':'value1', 'key2':'value2'}
r = requests.request('GET','http://python123.io/ws',params=kv)
print(r.url)  # https://python123.io/ws?key1=value1&key2=value2
  • json:JSON格式的数据,作为Request的内容,常用与post方法向服务器提交数据
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)
  • files:字典类型,传输文件
fs = {'file':open('data.xls','rb')}
r = requests.request('POST','http://python123.io/ws',files=fs)
  • timeout:设定超时时间,单位为秒
r = requests.request('GET','http://python123.io/ws',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://python123.io/ws',proxies = pxs)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值