Python3网络爬虫——(4)urllib.error异常处理

简介: 异常处理1、使用URLError进行异常处理# -*- coding: UTF-8 -*-from urllib import requestfrom urllib import errorif __name__ == "__main__": url = 'https://blog.
异常处理
1、使用URLError进行异常处理
# -*- coding: UTF-8 -*-
from urllib import request
from urllib import error
if __name__ == "__main__":
     url = 'https://blog.csdn.net/asialee_bir'  #错误链接
     try:
        response=request.urlopen(url)
        file=response.read().decode('utf-8')
        print(file)
     except  error.URLError as e:
        print(e.code)
        print(e.reason)

异常结果:(403错误表示禁止访问)



2、使用HTTPError进行异常处理
# -*- coding: UTF-8 -*-
from urllib import request
from urllib import error
if __name__ == "__main__":
    url = 'https://blog.csdn.net/asialee_bir'  #错误链接
    try:
        response=request.urlopen(url)
        file=response.read().decode('utf-8')
        print(file)
    except error.HTTPError as e:
        print(e.code)    #返回状态码
        print(e.reason)
异常结果:(403错误表示禁止访问)

注意:URLError是HTTPError的父类

3、URLError和TTPError混合使用
# -*- coding: UTF-8 -*-
from urllib import request
from urllib import error
if __name__ == "__main__":
    url = 'https://blog.baidusss.net'  #不存在的链接
    try:
        response=request.urlopen(url)
        file=response.read().decode('utf-8')
        print(file)
    except error.URLError as e:
        if hasattr(e,'code'):   #使用hasattr()判断是否有这些属性
             print('HTTPError')
             print(e.code)
        if hasattr(e,'reason'):
             print('URLError')
             print(e.reason)










相关文章
|
12天前
|
机器学习/深度学习 存储 算法
回声状态网络(Echo State Networks,ESN)详细原理讲解及Python代码实现
本文详细介绍了回声状态网络(Echo State Networks, ESN)的基本概念、优点、缺点、储层计算范式,并提供了ESN的Python代码实现,包括不考虑和考虑超参数的两种ESN实现方式,以及使用ESN进行时间序列预测的示例。
28 4
回声状态网络(Echo State Networks,ESN)详细原理讲解及Python代码实现
|
7天前
|
数据库连接 Python
Python中的异常处理除了Try语句,你还会啥?
Python中的异常处理除了Try语句,你还会啥?
18 1
|
12天前
|
数据采集 自然语言处理 监控
【优秀python毕设案例】基于python django的新媒体网络舆情数据爬取与分析
本文介绍了一个基于Python Django框架开发的新媒体网络舆情数据爬取与分析系统,该系统利用Scrapy框架抓取微博热搜数据,通过SnowNLP进行情感分析,jieba库进行中文分词处理,并以图表和词云图等形式进行数据可视化展示,以实现对微博热点话题的舆情监控和分析。
【优秀python毕设案例】基于python django的新媒体网络舆情数据爬取与分析
|
3天前
|
分布式计算 网络协议 Python
Python网络编程:socket编程
Socket 编程是网络编程的重要部分,主要用于在不同计算机之间进行通信。Python 提供了一个非常强大的 socket 库,使得网络编程变得简单和灵活。本篇博文将详细介绍 Python 的 socket 编程,包括基础概念、核心组件、常用功能,并附上一个综合的示例及其运行结果。
|
3天前
|
JSON API 数据格式
Python网络编程:HTTP请求(requests模块)
在现代编程中,HTTP请求几乎无处不在。无论是数据抓取、API调用还是与远程服务器进行交互,HTTP请求都是不可或缺的一部分。在Python中,requests模块被广泛认为是发送HTTP请求的最简便和强大的工具之一。本文将详细介绍requests模块的功能,并通过一个综合示例展示其应用。
|
2天前
|
数据采集 存储 中间件
Python进行网络爬虫:Scrapy框架的实践
【8月更文挑战第17天】网络爬虫是自动化程序,用于从互联网收集信息。Python凭借其丰富的库和框架成为构建爬虫的首选语言。Scrapy作为一款流行的开源框架,简化了爬虫开发过程。本文介绍如何使用Python和Scrapy构建简单爬虫:首先安装Scrapy,接着创建新项目并定义爬虫,指定起始URL和解析逻辑。运行爬虫可将数据保存为JSON文件或存储到数据库。此外,Scrapy支持高级功能如中间件定制、分布式爬取、动态页面渲染等。在实践中需遵循最佳规范,如尊重robots.txt协议、合理设置爬取速度等。通过本文,读者将掌握Scrapy基础并了解如何高效地进行网络数据采集。
24 6
|
7天前
|
开发者 Python
Python中的异常处理机制及其实践
【8月更文挑战第12天】Python的异常处理机制通过`try`和`except`结构显著提高了程序的稳定性和可靠性。在`try`块中执行可能引发异常的代码,如果发生异常,控制权将转移到与该异常类型匹配的`except`块。此外,还可以通过`else`处理无异常的情况,以及使用`finally`确保某些代码无论如何都会被执行,非常适合进行清理工作。这种机制允许开发者精确地捕捉和管理异常,从而提升程序的健壮性和可维护性。同时,Python还支持定义自定义异常,进一步增强了错误处理的灵活性。
26 4
|
9天前
|
监控 测试技术 数据库
Python自动化测试之异常处理机制
总体而言,妥善设计的异常处理策略让自动化测试更加稳定和可靠,同时也使得测试结果更加清晰、易于理解和维护。在设计自动化测试脚本时,务必考虑到异常处理机制的实现,以保证测试过程中遇到意外情况时的鲁棒性和信息的有效传达。
22 2
|
12天前
|
机器学习/深度学习 数据可视化 Python
如何可视化神经网络的神经元节点之间的连接?附有Python预处理代码
该博客展示了如何通过Python预处理神经网络权重矩阵并将其导出为表格,然后使用Chiplot网站来可视化神经网络的神经元节点之间的连接。
19 0
如何可视化神经网络的神经元节点之间的连接?附有Python预处理代码
|
12天前
|
数据采集 算法 数据可视化
【优秀python算法设计】基于Python网络爬虫的今日头条新闻数据分析与热度预测模型构建的设计与实现
本文设计并实现了一个基于Python网络爬虫和机器学习模型的今日头条新闻数据分析与热度预测系统,通过数据采集、特征工程、模型构建和可视化展示,挖掘用户行为信息和内容特征,预测新闻热度,为内容推荐和舆情监控提供决策支持。
【优秀python算法设计】基于Python网络爬虫的今日头条新闻数据分析与热度预测模型构建的设计与实现