网站首页/网络技术列表/内容

“ Python Web搜寻器”1.2搜寻页面的异常处理

网络技术2023-09-04阅读
网络故障(network failure)是指由于硬件的问题、软件的漏洞、病毒的侵入等引起网络无法提供正常服务或降低服务质量的状态。

看电影网络连接出现异常_网络连接出现异常_网络连接出现异常

URLRequired

由于缺少网址导致的异常

TooManyRedirects

看电影网络连接出现异常_网络连接出现异常_网络连接出现异常

超过重定向的最大数量时发生异常

ConnectionTimeout

由于连接服务器超过预定时间而导致的异常

看电影网络连接出现异常_网络连接出现异常_网络连接出现异常

超时

从启动URL请求到获取URL请求的内容超过预定时间时,会生成异常

ConnectionTimeout和Timeout异常之间有一定的区别。超时是指从发送URL请求到获取内容的整个过程中的超时异常。 ConnectionTimeout仅引用与远程服务器连接期间的超时异常。

raise_for_status()方法

理解Response类非常重要。诸如Response之类的对象将返回所有Web内容,因此它还提供了一个称为raise_for_status()的方法。此方法专门用于处理异常。此方法具有如此有趣的特性,它可以确定返回的响应类型状态是否为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来获取异常。在这个异常部分,我们在异常部分使用了返回的“异常”来表示我们已经捕获了这个异常,因此这样的通用代码框架可以有效地处理它。它可能在我们访问或爬网网页时出现。由网络不稳定引起的某些错误或某些现象。


本文来自本站,转载请注明本文网址:
http://www.pc-fly.com/a/tongxingongju/article-326564-1.html


当今,越来越多的业务应用运行于网络架构之上,保障网络的持续、高效、安全的运行,成为网络管理者面临的巨大挑战。

……

相关阅读