爬虫中requests模块和urllib模块的异同点

相同点:

requests模块和urllib模块都能实现对网页的请求,并获取网页数据

异同点:

requests模块:

  1. 使用的是对应请求方式的属性/方法,可对性高,方便理解。
  2. 对网页编码的方式有多种
  3. 能设置请求头的参数
  4. 能解析带有中文的网址

爬虫中requests模块和urllib模块的异同点

注:其中content拿到的数据为二进制,需要转化为utf-8才能正常显示,若使用text,则原网页编码格式是什么,拿到的编码格式就是什么

urllib模块:

  1. 对网页申请访问的方法为urlopen(),且需要进行编码处理才能显示正常网页数据
  2. 请求头的参数设置有限制,不能设置上传文件,ip等的参数
  3. 不能解析带中文的网址,会报错

爬虫中requests模块和urllib模块的异同点

注:以和平精英贴吧为例,注释掉的网址为加密过后的网址,使用urlopen对加密后的网址申请访问即可成功

总的来说,requests模块是使用python语言且在urllib模块的基础上编写的,相比于urllib模块,requests模块处理http请求时更加方便