浅析Python requests 模块

Python requests 模块

  requests 模块是我们使用的 python爬虫 模块 可以完成市场进80%的爬虫需求。

安装

pip install requests

使用

requests模块代码编写的流程:

  • - 指定url
  • - 发起请求
  • - 获取响应对象中的数据
  • - 持久化存储
-------------案例-------------------------
import requests
# 指定url
url="https://www.sogou.com/"
# 发起请求
response = requests.get(url)
# 获取响应对象中的数据
page_text = response.text
# 持久化存储
with open('./sogou.html','w',encoding='utf-8') as fp:
  fp.write()
-------------------------------------------

参数

# post 数据
response = requests.post(url=url,data=data,headers=headers)

# get 数据
response = requests.get(url=url,data=data,headers=headers)

# 返回二进制数据
response.content 

# 返回字符串数据
response.text  

# 返回json对象
response.json()

其他了解

1、该模块实现爬取数据前需要查找需要爬取数据的指定URL,可通过浏览器自带抓包功能。

# 浏览器抓取 Ajax 请求
F12 --> Network --> XHR --> Name --> Response

2、上面的headers参数是进行UA伪装为了反反爬

反爬机制:UA检测 --> UA伪装

3、下面是http我们爬包是常用的请求头参数

- accept: 浏览器通过这个头告诉服务器,他所支持的数据类型
  - Accept-Charset:浏览器通过这个头告诉服务器,它支持那种字符集
  - Accept-Encoding:浏览器通过这个头告诉服务器,支持的压缩格式
  - Accept-Language:浏览器通过这个头告诉服务器,他的语言环境
  - Host:浏览器同过这个头告诉服务器,想访问哪台主机
  - If-ModifiedSince:浏览器通过这个头告诉服务器,缓存数据的时间
  - Heferer:浏览器通过这个头告诉服务器,客户及时那个页面来的,防盗链
  - Connection:浏览器通过这个头告诉服务器,请求完后是断开链接还是保持链接
  - X-Requested-With:XMLHttpRequest 代表通过ajax方式进行访问
  - User-Agent:请求载体的身份标识

以上就是浅析Python requests 模块的详细内容,更多关于Python requests 模块的资料请关注我们其它相关文章!

(0)

相关推荐

  • Python使用requests模块爬取百度翻译

    requests模块: python中原生的一款基于网络请求的模块,功能非常强大,简单便捷,效率极高. 作用:模拟浏览器发请求. 提示:老版使用 urllib模块,但requests比urllib模块要简单好用,现在学习requests模块即可! requests模块编码流程 指定url 1.1 UA伪装 1.2 请求参数的处理 2.发起请求 3.获取响应数据 4.持久化存储 环境安装: pip install requests 案例一:破解百度翻译(post请求) 1.代码如下: #爬取百度翻

  • Python requests模块cookie实例解析

    cookie并不陌生,与session一样,能够让http请求前后保持状态.与session不同之处,在于cookie数据仅保存于客户端.requests也提供了相应到方法去处理cookie. 在python requests模块-session中,我们知道了requests中的session对象能够在请求之间保持cookie,它极大地方便了我们去使用cookie.当我们想设置方法级别中的请求时,可以如下面示例一样操作. import requests s = requests.session(

  • Python3离线安装Requests模块问题

    最近运维上需要在测试环境调用http的post请求,实现自动化日切,我看了下我会的编程,也就python能符合我的要求,且简单好操作.但是在实际操作过程遇到了一些问题,其中最大的就是测试环境的机器是外网隔离的,没法连外网进行直接安装部分模块,通过搜索和实践之后,简单说下我的经验. 机器环境 操作系统:Windows Server 2012 x64 python3安装 从 [官网] 下载最新的适合windows 的安装包. 下载下来的python-3.7.4-amd64.exe,直接拷贝到测试环境

  • python爬虫 基于requests模块发起ajax的get请求实现解析

    基于requests模块发起ajax的get请求 需求:爬取豆瓣电影分类排行榜 https://movie.douban.com/中的电影详情数据 用抓包工具捉取 使用ajax加载页面的请求 鼠标往下下滚轮拖动页面,会加载更多的电影信息,这个局部刷新是当前页面发起的ajax请求, 用抓包工具捉取页面刷新的ajax的get请求,捉取滚轮在最底部时候发起的请求 这个get请求是本次发起的请求的url ajax的get请求携带参数 获取响应内容不再是页面数据,是json字符串,是通过异步请求获取的电影

  • python爬虫 基于requests模块的get请求实现详解

    需求:爬取搜狗首页的页面数据 import requests # 1.指定url url = 'https://www.sogou.com/' # 2.发起get请求:get方法会返回请求成功的响应对象 response = requests.get(url=url) # 3.获取响应中的数据:text属性作用是可以获取响应对象中字符串形式的页面数据 page_data = response.text # 4.持久化数据 with open("sougou.html","w&

  • Python3 requests模块如何模仿浏览器及代理

    requests是使用Apache2 licensed 许可证的HTTP库. 用python编写. 比urllib2模块更简洁. Request支持HTTP连接保持和连接池,支持使用cookie保持会话,支持文件上传,支持自动响应内容的编码,支持国际化的URL和POST数据自动编码. 在python内置模块的基础上进行了高度的封装,从而使得python进行网络请求时,变得人性化,使用Requests可以轻而易举的完成浏览器可有的任何操作. 代码如下 import requests def xia

  • Python requests模块安装及使用教程图解

    requests模块是一个用于访问网络的模块,其实类似的模块还有很多,不在一一在这里解释.这么多的相似的模块为什么都说只有这个好用呢,因为他人性化.如果你学过urllib之类的模块的话,比如urllib,对比一下就很清楚了. 1.requests模块的安装 requests模块的安装非常简单,使用pip install requests命令即可安装,我是在python的Terminal中直接安装的,大家也可以在cmd命令窗口中进行安装. 2.requests模块的导入 导入requests模块时

  • Python requests模块session代码实例

    http协议本身是无状态的,为了让请求之间保持状态,有了session和cookie机制.requests也提供了相应的方法去操纵它们. requests中的session对象能够让我们跨http请求保持某些参数,即让同一个session对象发送的请求头携带某个指定的参数.当然,最常见的应用是它可以让cookie保持在后续的一串请求中. 下面,通过官方文档中的示例来了解如何使用它. import requests s = requests.Session() # 第一步:发送一个请求,用于设置请

  • Python利用requests模块下载图片实例代码

    本文主要介绍的是关于Python利用requests模块下载图片的相关,下面话不多说了,来一起看看详细的介绍吧 MySQL中事先保存好爬取到的图片链接地址. 然后使用多线程把图片下载到本地. 示例代码: # coding: utf-8 import MySQLdb import requests import os import re from threading import Thread import datetime header = {'User-Agent': 'Mozilla/5.0

  • Python requests模块基础使用方法实例及高级应用(自动登陆,抓取网页源码)实例详解

    1.Python requests模块说明 requests是使用Apache2 licensed 许可证的HTTP库. 用python编写. 比urllib2模块更简洁. Request支持HTTP连接保持和连接池,支持使用cookie保持会话,支持文件上传,支持自动响应内容的编码,支持国际化的URL和POST数据自动编码. 在python内置模块的基础上进行了高度的封装,从而使得python进行网络请求时,变得人性化,使用Requests可以轻而易举的完成浏览器可有的任何操作. 现代,国际化

  • Python grequests模块使用场景及代码实例

    使用场景: 1) 爬虫设置ip代理池时验证ip是否有效 2)进行压测时,进行批量请求等等场景 grequests 利用 requests和gevent库,做了一个简单封装,使用起来非常方便. grequests.map(requests, stream=False, size=None, exception_handler=None, gtimeout=None) 另外,由于grequests底层使用的是requests,因此它支持 GET,OPTIONS, HEAD, POST, PUT, D

随机推荐