17. 爬虫请求模块

1. Urllib.request 模块

1.1 相应版本

  • Python 2: urllib 2, urllib
  • Python 3: 把urllib 和urllib2 合并,urllib.request

1.2 常用的办法

  • urllib.request.urlopen(‘网址’) 作用:向网站发起请求并取得响应
  • 字节流:response.read()
  • 字符串:response.read().decode(“utf-8”)
  • urllib.request.Request ( “网址”,headers = “字典” )
  • urlopen 不支持重构 User-Agent

1.3 响应对象

  • read() 读取服务器相应的内容
  • getcode() 返回HTTP的相应码
  • geturl() 返回实际数据的URL(防止重定向)

2. urllib.parse

2.1 常用方法

  • urldecode ( 字典 )
  • quote ( 字符串 里面的参数是字符串 )

3. 请求方法

  • get特点:查询的数据在url地址里显示
  • post特点
    • 在Request方法中添加data参数
    • urllib.request.Request ( url, data = data, headers = headers)
    • data : 表单数据以bytes类型提交,不是str

4. requests 模块

4.1 安装

  • pip install requests
  • 在开发工具中安装

4.2 requests 常用方法

  • requests,get(url)

4.3 响应对象 response 方法

  • response.text 返回unicode格式的数据 ( str )
  • response.content 返回字节流数据 二进制
  • response.content.decode ( “utf-8” ) 手动编码
  • response.url 返回url
  • response.encode () = ’ 编码 ’

4.4 requests 模块发送 post 请求

  • requests.post ( url, data =data, headers = headers)

4.5 requests 设置代理

  • requests 设置代理只需要在请求(get/post)中添加 proxies 参数就可以了
  • 代理网站:
    • 挂机精灵 http://www.guajijingling.com/
    • 快代理 http://www.kuaidaili.com/
    • 代理云:http://www.dailiyun.com/

4.6 处理不信任的SSL证书

  • SSL证书是数字证书的一种, 类似于各种证书的电子副本,配置在服务器上。遵守SSL协议,受信任的证书颁发机构CA,在验证服务器后颁发,有服务器验证和数据加密传输的功能
  • urllib.request.Request ( url, proxies = False)

4.7 requests 解析源码

  • 通过分析源码来提高自己的设计分析理解的能力
  • 分析源码可以更好的理解第三方库的设计思想和使用方法
  • 经常分析源码可以更好的理解网络架构

4.8 cookie

  • cookie: 通过在客户端记录的信息确认用户的身份
  • http 是无连接协议,客户端和服务器交互仅限于 请求/响应 的过程,结束后断开,下一次请求时会认为是一个新的客户端,为了维护连接,让服务器知道是前一个用户发起的请求,必须在一个地方保存用户信息

4.9 session

  • 通过在服务器端记录的信息确定用户的身份,这个session就是一个会话
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值