raise_for_status()方法
理解Response类非常重要,Response这样的一个对象返回了所有的网页内容,那么它也提供了一个方法,叫raise_for_status(),这个方法是专门与异常打交道的方法,该方法有这样一个有趣的功能,它能够判断返回的Response类型状态是不是200。如果是200,他将表示返回的内容是正确的,如果不是200,他就会产生一个HttpError的异常。
那这个方法有什么用呢?
那我们来看一下我们的通用代码框架:

def getHTMLText(url):
try:
r = requests.get(url, timeout = 30)
r.raise_for_status()
r.encoding = r.apparent_encoding
return r.text
except:
return “产生异常”
这个代码中我们用r.raise_for_status()方法,它就可以有效的判断网络连接的状态。如果网连接出现错误,那么它就会用try-except来获取一个异常。而这个异常,在异常部分,我们用了一句 return “产生异常” 来表示,我们捕获到了这个异常,所以这样一个通用代码框架可以有效的处理,我们在访问或爬取网页过程中,它可能出现的一些错误,或者是网络不稳定造成的一些现象

raise_for_status()方法相关推荐

  1. pythonrequests库使用方法_python三方库之requests-快速上手

    基于2.21.0 发送请求 发送GET请求: r = requests.get('https://api.github.com/events') 发送POST请求: r = requests.post ...

  2. python爬虫实战,requests模块,Python实现抓取头条街拍美图

    前言 利用Python爬取的是今日头条中的街拍美图.废话不多说. 让我们愉快地开始吧~ 开发工具 Python版本: 3.6.4 相关模块: re: requests模块: 以及一些Python自带的 ...

  3. python 网站文件下载-python从网站上下载东西

    import requests res=requests.get('http://www.gutenberg.org/cache/epub/112/pg112.txt')#requests返回一个re ...

  4. 怎么在python下载网站内容-python从网站上下载东西

    import requests res=requests.get('http://www.gutenberg.org/cache/epub/112/pg112.txt')#requests返回一个re ...

  5. python爬取网页公开数据_如何用Python爬取网页数据

    使用Python爬取网页数据的方法: 一.利用webbrowser.open()打开一个网站:>>> import webbrowser >>> webbrowse ...

  6. 编程python爬取网页数据教程_实例讲解Python爬取网页数据

    一.利用webbrowser.open()打开一个网站: >>> import webbrowser >>> webbrowser.open('http://i.f ...

  7. python requests库作用_python Requests库入门

    一.Requests 库的安装 对Requests库 了解更多请移步:http://www.python-requests.org 安装操作: win平台:"以管理员身份运行" c ...

  8. python Web抓取(一)[没写完]

    需要的模块: python web抓取通过: webbrowser:是python自带的,打开浏览器获取指定页面 requests:从因特网上下载文件和网页 Beautiful Soup:解析HTML ...

  9. 【Python】下载所有 XKCD 漫画

    博客和其他经常更新的网站通常有一个首页,其中有最新的帖子,以及一个"前 一篇"按钮,将你带到以前的帖子.然后那个帖子也有一个"前一篇"按钮,以此 类推.这创建了 ...

  10. Request库入门

    一.Requests库的安装与简介 Request库是Python中最受欢迎的第三方库之一,主要用于网络信息的爬取,是爬取网页最好用的第三方库.库的方法足够简单,只用一行代码就可以实现爬取. Requ ...

最新文章

  1. 我以为的周末 vs 实际上的周末
  2. android Timer与TimerTask的相关操作
  3. js 调用服务器端方法总结
  4. TDengine安装教程
  5. node简介及安装、下载及运行hexo
  6. 使用 Visual Studio Code (VSCODE)写 C51 (持续更新 2018-04-09)
  7. Visual C# 2005 - 如何于DataGridView控件中以跨数据行方式显示数据
  8. 从零开始的linux 第十九章(mv命令详解)
  9. python enumerate() 函数的使用方法
  10. 剑指offerJZ1 二维数组中的查找 C++ python
  11. ssm java当前项目路径_SSM项目中动态获取路径
  12. c语言中排列组合函数,排列组合c怎么算公式是什么
  13. Linus Torvalds称讨厌被人崇拜
  14. JSON字符串与protobuf互转
  15. windows程序设计(一)
  16. 重磅!谷歌发布《深度学习调优手册》!Hinton转发点赞!
  17. 《缠中说禅108课》84:本 ID 理论一些必须注意的问题
  18. anaconda的令牌是啥_Anaconda是什么?香吗?
  19. 【世界观】硅谷最重要文件:Netflix126页PPT完全汉化版
  20. POI之图片导出到PPT简单实例

热门文章

  1. unity游戏开发之游戏过审后 国行PS4将在3月20日发售
  2. 2022-2022阿里巴巴Android面试真题解析,阿里+头条+抖音+百度+蚂蚁+京东面经
  3. Zynq7000(XC7Z045FF900)硬件开发完整指南
  4. php干货网,php高手干货【必看】
  5. 从零开始嵌入聊天机器人服务(小白适用)
  6. 五级流水线CPU之低功耗设计 (一) :Bypassing(旁路)
  7. pycharm清华镜像源使用
  8. 滤波器频率响应 matlab,滤波器频率响应与实际滤波情况不符合
  9. 《Linux驱动:USB设备驱动看这一篇就够了》
  10. Comparative Evaluation of Genome Assemblers from Long-Read Sequencing for Plants and Crops