request库的应用

安装 pip install requests

import requests
url = 'http://www.baidu.com'
res = requests.get(url)
print(res.status_code)#打印请求状态
print(res.cookies)#打印cookies
print(res.text)#打印响应内容字符串
print(res.content)#打印二进制内容,比如一些图片,视频这些内容。

http://httpbin.org/用来测试你HTTP请求的真实信息,可以用来测试爬虫代码请求信息,测试一下

res = requests.get('http://httpbin.org/get',
params={'name':'nextbox','age':32,'sex':'male'})#get方法传入一个参数,服务器响应后输出
print(res.text)
{
  "args": {
    "age": "32", 
    "name": "nextbox", 
    "sex": "male"
  }, 
  "headers": {
    "Accept": "*/*", 
    "Accept-Encoding": "gzip, deflate", 
    "Connection": "close", 
    "Host": "httpbin.org", 
    "User-Agent": "python-requests/2.18.4"
  }, 
  "origin": "171.83.109.125", 
  "url": "http://httpbin.org/get?name=nextbox&age=32&sex=male"
}
res = requests.get('http://httpbin.org/get',headers={"User-Agent":'I use chrome'})#传入头部参数,可以发现头部信息变了
print(res.text)
{
  "args": {}, 
  "headers": {
    "Accept": "*/*", 
    "Accept-Encoding": "gzip, deflate", 
    "Connection": "close", 
    "Host": "httpbin.org", 
    "User-Agent": "I use chrome"
  }, 
  "origin": "171.83.109.125", 
  "url": "http://httpbin.org/get"
}

再访问知乎的时候,如果不修改请求头,会被拒绝访问,可以说知乎有检查请求头反爬机制的

res = requests.post('http://httpbin.org/post',data={'age':80},headers={'User-Agent':'chrome'})#pos方法传入的data参数,在响应的form数据中显示
print(res.json())

{'args': {}, 'data': '', 'files': {}, 'form': {'age': '80'}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Connection': 'close', 'Content-Length': '6', 'Content-Type': 'application/x-www-form-urlencoded', 'Host': 'httpbin.org', 'User-Agent': 'chrome'}, 'json': None, 'origin': '171.83.109.125', 'url': 'http://httpbin.org/post'}

requests.post(url,files=files)#files可以给网站上传文件
requests.get(url,verify=False)#verify参数,忽视证书验证
requests.get(url,cet=('证书',‘key’))#可以上传证书
requests.get(url,proxies=proxies)#设置IP代理
proxies={'http':'http://10.10.127.0'
        'https':'https://10.10.120.36}
proxies={'http':'http://user:password@127.10.20.36'}#有账号密码的IP代理

requests.get(url,timeout)#设置timeout可以在访问网页是,没有在知道时间内响应就抛出异常(RealTimeout)
requests.get(url,auth={'useer':'password'})#需要认证网络访问
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值