目录

requests使用

requests请求方法

requests响应对象属性


Requests模块是一个用于网络请求的模块,主要用来模拟浏览器发请求。其实类似的模块有很多,比如urllib,urllib2,httplib,httplib2,他们基本都提供相似的功能。但是这些模块都复杂而且差不多过时了,requests模块简单强大高效,使得其在众多网络请求模块中脱引而出。

requests使用

环境安装:pip install requests

使用流程:

  • 指定url
  • 基于requests模块发送请求
  • 获取响应对象中的数据值
  • 持久化存储(不是必须的)

案例:爬取百度首页的数据

#1. 导包
import requests
#2. 指定url
url = "https://www.baidu.com"
#3. 使用GET方法发送请求,该方法会返回一个响应对象
response = requests.get(url=url)
#4. 获取响应数据
print(response.status_code)  # 打印状态码
print(response.url)          # 打印请求url
print(response.headers)      # 打印响应头头信息
print(response.text)         #以文本形式打印网页源码#保存数据
response.encoding = 'utf-8'  #指定编码格式,不然打开乱码
text = response.text
with open('./2.html','w',encoding='utf-8') as f:f.write(text)

解决requests请求的数据中文乱码问题——》requests请求返回内容 中文乱码问题

requests请求方法

上面的案例requests发送了一个GET请求方法,除此之外还有其他的请求方法。最常用的就是GET和POST方法。

  • res = requests.get ()
  • res = requests.post ()
  • res = requests.put ()
  • res = requests.delete ()
  • res = requests.head ()
  • res = requests.options ()

且在指定方法发送请求的时候,有时候还需要在请求方法括号中requests.get(url=url, xx = xx)指定一些参数,如下。先了解一下

方法

参数名字

HTTP头部

headers

GET参数

params

POST参数

data

文件

files

Cookies

cookies

重定向处理

allow_ redirects = False/True

超时

timeout

证书验证

verify = False/True

工作流(延迟下载)

stream=False/ True

事件挂钩

hooks=dict(response=)

身份验证

auth=

代理

proxies=

requests响应对象属性

在上面爬取百度首页时,response = requests.get(url=url)其返回的是一个响应对象,而如果我们想要获取具体的数据比如响应码或者网页源码时,就需要通过指定响应对象的属性进行获取。如response.status_code获取响应码

  • 获取请求url                                   res. url
  • 状态码                                           res. status_code
  • 响应数据(以字符串形式)       res . text
  • 返回的是一个原生字符串,是bytes类型     res. content
  • 查看服务器响应头                       res. headers
  • 查看cookie                                   res.cookies

python之requests模块详解相关推荐

  1. Python—requests模块详解

    Python-requests模块详解 来源(博客园@小L小 ):Python-requests模块详解

  2. python之sys模块详解_(转)python之os,sys模块详解

    python之sys模块详解 原文:http://www.cnblogs.com/cherishry/p/5725184.html sys模块功能多,我们这里介绍一些比较实用的功能,相信你会喜欢的,和 ...

  3. 【Python】python之subprocess模块详解

    [Python]python之subprocess模块详解 subprocess模块 subprocess是Python 2.4中新增的一个模块,它允许你生成新的进程,连接到它们的 input/out ...

  4. Python的pickle模块详解(包括优缺点及和JSON的区别)

    文章目录 一.pickle是什么? 1.pickle的优缺点 2.pickle和JSON的区别 3.pickle的应用总结 二.pickle的用法 1. pickle接口 2. pickle实例 结语 ...

  5. python中logging模块详解_python logging日志模块详解

    logging 日志模块详解 用Python写代码的时候,在想看的地方写个print xx 就能在控制台上显示打印信息,这样子就能知道它是什么了,但是当我需要看大量的地方或者在一个文件中查看的时候,这 ...

  6. python当中时间模块详解,包括time,timeit,datatime

    目录 time 模块 -- 时间获取和转换 以下三个比较常见: time.perf_counter() time.process_time() time.sleep(secs) timeit 模块详解 ...

  7. Python——requests模块详解

    1.模块说明 requests是使用Apache2 licensed 许可证的HTTP库. 用python编写. 比urllib2模块更简洁. Request支持HTTP连接保持和连接池,支持使用co ...

  8. Python requests模块详解

    1.模块说明 requests是使用Apache2 licensed 许可证的HTTP库.用python编写.比urllib2模块更简洁. Request支持HTTP连接保持和连接池,支持使用cook ...

  9. 【python】python爬虫requests库详解

    1.安装:pip install requests 简介:Requests是一个优雅而简单的Python HTTP库,与之前的urllibPython的标准库相比,Requests的使用方式非常的简单 ...

最新文章

  1. java代码启动电脑上程序方法
  2. java应用重启导致数据丢失_java – 在重新启动应用程序后从SharedPreferences恢复时设置丢失数据...
  3. 利用c语言建立交易系统,【图】手把手教会你构建自己的交易系统 - 4_股票论坛,炒股公式,股票指标,股票公式,选股公式_数据、教程交流论坛_理想论坛 - 股票论坛...
  4. 2019 ICPC徐州站总结
  5. appium入门篇(2)--desired capabilities
  6. js 延迟几秒执行_息息相关的 JS 同步,异步和事件轮询
  7. mui多层tab切换上拉加载的实现
  8. USACO习题:Your Ride Is Here
  9. c语言弹窗代码,pc端点击弹窗代码
  10. 工业机器人电路图讲解话术_智能对话机器人系统及其实现智能对话的方法与流程...
  11. linux 字符 拨号上网,LINUX下用ADSL拨号上网
  12. Springboot+微信小程序自习室管理系统毕业设计源码221535
  13. Supervisor使用简介
  14. java赵云主角兵器谱游戏_赵云赵子龙的外号有哪些?赵云的武器是什么 赵
  15. 《易语言百集教程》百集高清教程免费下载地址————【Badboy】
  16. 安装纯净版win系统
  17. linux cc***防范
  18. python 密码验证
  19. 算法 数论 素数(质数)
  20. python批量创建文件夹

热门文章

  1. 字符流(FileReader,FileWriter,BufferedReader,BufferedWriter)
  2. 磁盘 硬盘 软盘 光盘介绍
  3. Carson带你学Android:全面解析Android消息推送解决方案
  4. 【转】为什么我们喜欢把火撒在亲人身上
  5. 高级语言程序设计 13-14-1
  6. mysql怎么查询数据库每个表有多少条记录
  7. 论文代码复现Enhancing the Transferability of Adversarial Attacks through Variance Tuning
  8. java TreeMap详解
  9. docker镜像保存为文件与文件载入为docker镜像
  10. 长文慎入,如何快速开发区块链游戏