Python爬虫包BeautifulSoup异常处理(二)

 更新时间:2018年06月17日 09:41:07   作者:SuPhoebe   我要评论

这篇文章主要为大家详细介绍了Python爬虫包BeautifulSoup的异常处理,具有一定的参考价值,感兴趣的朋友可以参考一下

面对网络不稳定,页面更新等问题,很可能出现程序异常的问题,所以我们要对程序进行一些异常处理。大家可能觉得处理异常是一个比较麻烦的活,但在面对复杂网页和任务的时候,无疑成为一个很好的代码习惯。

网页‘404'、‘500'等问题

try:
    html = urlopen('http://www.pmcaff.com/2221')
  except HTTPError as e:
    print(e)

返回的是空网页

if html is None:
    print('没有找到网页')

目标标签在网页中缺失

try:
    #不存在的标签
    content = bsObj.nonExistingTag.anotherTag 
  except AttributeError as e:
    print('没有找到你想要的标签')
  else:
    if content == None:
      print('没有找到你想要的标签')
    else:
      print(content)

实例

if sys.version_info[0] == 2:
  from urllib2 import urlopen # Python 2
  from urllib2 import HTTPError
else:
  from urllib.request import urlopen # Python3
  from urllib.error import HTTPError
from bs4 import BeautifulSoup
import sys


def getTitle(url):
  try:
    html = urlopen(url)
  except HTTPError as e:
    print(e)
    return None
  try:
    bsObj = BeautifulSoup(html.read())
    title = bsObj.body.h1
  except AttributeError as e:
    return None
  return title

title = getTitle("http://www.pythonscraping.com/exercises/exercise1.html")
if title == None:
  print("Title could not be found")
else:
  print(title)

以上全部为本篇文章的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • python算法学习之基数排序实例

    python算法学习之基数排序实例

    本代码介绍了python算法学习中的基数排序实例,大家参考使用吧
    2013-12-12
  • 浅析Python的web.py框架中url的设定方法

    浅析Python的web.py框架中url的设定方法

    web.py是Python的一个轻量级Web开发框架,这里我们来浅析Python的web.py框架中url的设定方法,需要的朋友可以参考下
    2016-07-07
  • python 文件操作删除某行的实例

    python 文件操作删除某行的实例

    下面小编就为大家带来一篇python 文件操作删除某行的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • python使用webbrowser浏览指定url的方法

    python使用webbrowser浏览指定url的方法

    这篇文章主要介绍了python使用webbrowser浏览指定url的方法,实例分析了Python操作webbrowser模块的技巧,非常简单实用,需要的朋友可以参考下
    2015-04-04
  • Django基于ORM操作数据库的方法详解

    Django基于ORM操作数据库的方法详解

    这篇文章主要介绍了Django基于ORM操作数据库的方法,结合实例形式总结分析了Django使用ORM操作数据库的相关配置、增删改查等相关操作技巧,需要的朋友可以参考下
    2018-03-03
  • Python实现自定义函数的5种常见形式分析

    Python实现自定义函数的5种常见形式分析

    这篇文章主要介绍了Python实现自定义函数的5种常见形式,结合实例形式较为详细的分析了Python自定义函数相关的参数、默认值、隐函数等相关操作技巧与注意事项,需要的朋友可以参考下
    2018-06-06
  • python字符串中的单双引

    python字符串中的单双引

    下面小编就为大家带来一篇python字符串中的单双引。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • python 划分数据集为训练集和测试集的方法

    python 划分数据集为训练集和测试集的方法

    今天小编就为大家分享一篇python 划分数据集为训练集和测试集的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • python 禁止函数修改列表的实现方法

    python 禁止函数修改列表的实现方法

    下面小编就为大家带来一篇python 禁止函数修改列表的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • Python爬取个人微信朋友信息操作示例

    Python爬取个人微信朋友信息操作示例

    这篇文章主要介绍了Python爬取个人微信朋友信息操作,涉及Python使用itchat包实现微信朋友信息爬取操作相关实现技巧,需要的朋友可以参考下
    2018-08-08

最新评论