Python爬虫开发(二)—— requests模块的学习

1.使用之前

  • pip install requests

2.发送get,post请求,获取响应

  • response = requests.get(url)   #发送get请求,请求url地址对应的响应
  • response = requests.post(url,data={请求体的字典})   #发送post请求,请求url地址对应的响应

3.response的方法

  • response.text
    • 该方式往往会出现乱码,出现乱码使用response.encoding="utf-8"
  • response.content.decode()
    • 把响应的二进制字节流转化为str类型
  • response.request.url   #发送请求的url地址
  • response.url   #response响应的url地址
  • response.request.headers   #请求头
  • response.header   #响应请求
  •  

4.获取网页源码的正确打开方式(通过下面三种方式,一定能够获取到网页正确解码之后的字符串)

  1. response.content.decode() 
  2. response.content.decode("gbk")
  3. response.text

5.发送带header的请求

  • 为 了模仿浏览器,获取和浏览器一模一样的内容
  • python
    • headers = {"User-Agent":"....."}     第一个添加User-Agent,第二个添加Referer,还不行可以把除了cookie的带上,最后还不行,考虑把cookie带上
    • response = requests.get(url,headers=headers)

4.使用超时参数

  • requests.get(url,headers=headers,timeout=3)   # timeout=3   三秒之内必须返回响应,否则会报错

5.retrying模块的学习

  • pip install retrying
  • python
    • from retrying import retry
    • @retry(stop_max_attempt_number=3)
    • def fun1():
    •     print("this is func1")
    •     raise ValueError("this is test error")

6.处理cookie相关的请求

  • 人人网{"email":"mr_mao_hacker@163.com","passowrd":"alarmchime"}
  • 直接携带cookie请求url地址
    • 1.cookie放在headers中
      • python
        • headers={"User-Agent":"...","Cookie":"把cookie复制过来"}
    • 2.cookie字典传给cookie参数
      • requests.get(url,cookies=cookie_dict)
  • 先发送post请求,获取cookie,带上cookie请求登录后的页面
    • 1.session = requests.session()   #session具有的方法和requests一样
    • 2.session.post(url,data,headers)   #服务器设置在本地的cookie会保存在session
    • 3.session.get(url)   #会带上之前保存在session中得到cookie,能够请求成功

 

注意:勾选上Preserve log,找寻form表单的提交地址

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

良月柒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值