Python爬虫之requests模块

这篇具有很好参考价值的文章主要介绍了Python爬虫之requests模块。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Python爬虫之requests模块

一、requests模块介绍

requests文档http://docs.python-requests.org/zh_CN/latest/index.html

1、requests模块的作用:

  • 发送http请求,获取响应数据

2、requests模块是一个第三方模块,需要在你的python(虚拟)环境中额外安装

  • pip/pip3 install requests

3、requests模块发送get请求

  1. 需求:通过requests向百度首页发送请求,获取该页面的源码
  2. 运行下面的代码,观察打印输出的结果
# 1.2.1-简单的代码实现
import requests 

# 目标url
url = 'https://www.baidu.com' 

# 向目标url发送get请求
response = requests.get(url)

# 打印响应内容
print(response.text)

二、response响应对象

观察上边代码运行结果发现,有好多乱码;这是因为编解码使用的字符集不同早造成的;我们尝试使用下边的办法来解决中文乱码问题

# 1.2.2-response.content
import requests 

# 目标url
url = 'https://www.baidu.com' 

# 向目标url发送get请求
response = requests.get(url)

# 打印响应内容
# print(response.text)
print(response.content.decode()) # 注意这里!
  1. response.text是requests模块按照chardet模块推测出的编码字符集进行解码的结果
  2. 网络传输的字符串都是bytes类型的,所以response.text = response.content.decode(‘推测出的编码字符集’)
  3. 我们可以在网页源码中搜索charset,尝试参考该编码字符集,注意存在不准确的情况

1、response.text 和response.content的区别:

  • response.text
    • 类型:str
    • 解码类型: requests模块自动根据HTTP 头部对响应的编码作出有根据的推测,推测的文本编码
  • response.content
    • 类型:bytes
    • 解码类型: 没有指定

2、通过对response.content进行decode,来解决中文乱码

  • response.content.decode() 默认utf-8
  • response.content.decode("GBK")
  • 常见的编码字符集
    • utf-8
    • gbk
    • gb2312
    • ascii (读音:阿斯克码)
    • iso-8859-1

3、response响应对象的其它常用属性或方法

response = requests.get(url)中response是发送请求获取的响应对象;response响应对象中除了text、content获取响应内容以外还有其它常用的属性或方法:文章来源地址https://www.toymoban.com/news/detail-490833.html

  • response.url响应的url;有时候响应的url和请求的url并不一致
  • response.status_code 响应状态码
  • response.request.headers 响应对应的请求头
  • response.headers 响应头
  • response.request._cookies 响应对应请求的cookie;返回cookieJar类型
  • response.cookies 响应的cookie(经过了set-cookie动作;返回cookieJar类型
  • response.json()自动将json字符串类型的响应内容转换为python对象(dict or list)
# 1.2.3-response其它常用属性
import requests

# 目标url
url = 'https://www.baidu.com'

# 向目标url发送get请求
response = requests.get(url)

# 打印响应内容
# print(response.text)
# print(response.content.decode())             # 注意这里!
print(response.url)                            # 打印响应的url
print(response.status_code)                    # 打印响应的状态码
print(response.request.headers)                # 打印响应对象的请求头
print(response.headers)                        # 打印响应头
print(response.request._cookies)            # 打印请求携带的cookies
print(response.cookies)                        # 打印响应中携带的cookies

到了这里,关于Python爬虫之requests模块的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • python3 爬虫相关学习1:安装requests模块

    python3 爬虫相关学习1:安装requests模块

    目录 1 安装前:避免python2  python3 引起的问题 2 如何安装python3 2.1 直接上python3 官网下载 2.2 或者windows的话,microsoft store 里也可以下载 2.3 查看python版本 3 安装requests模块 3.1 很可能安装requests模块之前会遇到报错,需要先升级pip 3.2 安装 requests模块 4 开始使用 requests 模块 4.

    2024年02月05日
    浏览(9)
  • Python爬虫的学习day02 requests 模块post 函数, lmxl 模块的 etree 模块

    Python爬虫的学习day02 requests 模块post 函数, lmxl 模块的 etree 模块

    1.1 post 函数的参数 (简单版) 参数1:  url     网络地址 参数2:   data   请求数据 (一般数据是  账号,密码) 参数3:    headers  头请求  (User-Agent:  第一章讲过) 1.2  post 请求中 url 参数的获取 1.2.1 首先 打开一个 登录界面 。(这里以淘宝的登录界面为样例)

    2024年02月14日
    浏览(12)
  • Python 爬虫之 requests模块(ua伪装、代理、cookies、防盗链 Referer)、re模块、xpath模块、selenium

    Python 爬虫之 requests模块(ua伪装、代理、cookies、防盗链 Referer)、re模块、xpath模块、selenium

    下载 发送 get 请求 案例:百度 发送 post 请求 案例:百度翻译 UA 伪装 代理 cookies 登录 案例:17k小说网 防盗链 Referer 案例:梨视频 findall search finditer 预加载 提前写好正则表达式 匹配换行 re.S 在 html 中使用 原子组使用别名 爬取豆瓣电影 https://movie.douban.com/chart lxml.etree.XMLSy

    2024年01月24日
    浏览(33)
  • Python 爬虫的学习 day01 ,爬虫的基本知识, requests 和 charde模块, get函数的使用

    Python 爬虫的学习 day01 ,爬虫的基本知识, requests 和 charde模块, get函数的使用

    1.1什么是网络爬虫 网络爬虫,又称为网页蜘蛛,网络机器人,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本,另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。 1.2  网络爬虫的特点 网络爬虫是一个自动提取网页的程序,它为搜索引擎从万

    2024年02月15日
    浏览(9)
  • 自学爬虫—作业1—requests模块

    自学爬虫—作业1—requests模块

    视频: 肯德基地址查询,爬某个,获取下面的所有page的信息,存到一个json或者txt。 关键点 ,(1)每一个ajax的请求第一个键值对就是所有获得的地址的总数,然后充分利用这个信息。(2)对于json对于[]  部分可以看成数组,对于{}部分可以看成字典,用key取值。

    2024年02月07日
    浏览(11)
  • 爬虫学习(1)--requests模块的使用

    爬虫学习(1)--requests模块的使用

    什么是爬虫 爬虫是一种自动化工具,用于从互联网或其他计算机网络上获取数据。它可以模拟人的行为,自动访问网页,提取感兴趣的数据,并将其存储到本地计算机或数据库中。爬虫通常用于搜索引擎、数据分析、信息聚合等领域,也被许多企业用于市场调研、竞争分析、

    2024年02月03日
    浏览(12)
  • 网络爬虫——pip方式安装Requests模块

    网络爬虫——pip方式安装Requests模块

    一、前提是在安装完成PyCharm、Python等后完成,先进入到Python的安装目录下,找到Scripts的目标文件夹,复制文件路径,比如 C:Program Files (x86)PythonScripts ,如下图所示。 二、在该处输入cmd,进入该地址目录下或者使用快捷键win+R进入后将复制好的文件路径粘贴回车,若是使用

    2024年02月04日
    浏览(8)
  • 【Python爬虫】requests库

    【Python爬虫】requests库

    1.requests库的介绍 ​ requests 是 Python 语言编写,基于 urllib3 ,采用 Apache2 Licensed 开源协议的HTTP库。它比 urllib 更加方便,可以节约我们大量的工作,完全满足 HTTP 测试需求。是 Python 实现的简单易用的 HTTP 库。 Requests 中文文档:http://docs.pythonrequests.org/zh_CN/latest/index.html ​ 解决

    2024年02月16日
    浏览(12)
  • python-网络爬虫.Request

    python-网络爬虫.Request

    Request python中requests库使用方法详解: 一简介:         Requests 是Python语言编写,基于urllib,         采用Apache2 Licensed开源协议的 HTTP 库。         与urllib相比,Requests更加方便,处理URL资源特别流畅。         可以节约我们大量的工作,建议爬虫使用Requests库

    2024年02月14日
    浏览(15)
  • python爬虫—requests

    python爬虫—requests

    类型 : models.Response r.text : 获取网站源码 r.encoding :访问或定制编码方式 r.url :获取请求的 url r.content :响应的字节类型 r.status_code :响应的状态码 r.headers :响应的头信息 找登录接口  找参数的值 python代码 登录超级鹰官网:超级鹰验证码识别-专业的验证码云端识别服务

    2024年02月10日
    浏览(13)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包