python爬虫-确保可靠的网络连接

本文探讨了在网络爬虫过程中遇到的两类主要异常:网页不存在或服务器错误,以及服务器不存在的情况。通过使用异常处理机制,如检查HTTP错误和防止NoneType对象调用属性,可以增强爬虫的健壮性。文中提供了一个整合异常处理的示例函数,旨在提高代码的稳定性和可重用性。
摘要由CSDN通过智能技术生成

       网络是非常复杂的。网页数据格式不友好,网站服务器宕机,目标数据的标签找不到,都是很麻烦的事情。网络数据采集最痛苦的遭遇之一,就是爬虫运行的时候你洗洗睡了,梦想着明天一早数据就都会采集好放在数据库里,结果第二天醒来,你看到的却是一个因某种数据格式异常导致运行错误的爬虫。在前一天当你不再盯着屏幕去睡觉时,没过一会爬虫就不行了。下面让我针对这种情况,如何进行这种异常的处理方式:

       让我们看看爬虫import语句后面的第一行代码,如何处理那里可能出现的异常:

html=urlopen("http://www.pythonscraping.com/pages/page1.html")
      这行代码主要可能会发生两种异常:

      (1)网页在服务器上不存在(或者获取页面的时候出现错误)

       (2)服务器不存在

     第一种异常情况,程序返回HTTP错误。HTTP错误可能是“404 Page Not Found”"500 Internal Server Error"等。所有类似情形,urlopen函数都会抛出“Http Error”异常。我们可以用下面的方式处理这种异常:

try:
     html=urlopen("http://www.pythonscrapinig.com/pages/page1.html")
except HTTPError as e:
     print(e)
     #返回空值,中断程序,或者执行另一个方案
  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值