Python爬蟲包BeautifulSoup異常處理(二)
更新時間:2018年06月17日 09:41:06 作者:SuPhoebe
這篇文章主要為大家詳細介紹了Python爬蟲包BeautifulSoup的異常處理,具有一定的參考價值,感興趣的朋友可以參考一下
面對網(wǎng)絡不穩(wěn)定,頁面更新等問題,很可能出現(xiàn)程序異常的問題,所以我們要對程序進行一些異常處理。大家可能覺得處理異常是一個比較麻煩的活,但在面對復雜網(wǎng)頁和任務的時候,無疑成為一個很好的代碼習慣。
網(wǎng)頁‘404'、‘500'等問題
try:
html = urlopen('http://www.pmcaff.com/2221')
except HTTPError as e:
print(e)
返回的是空網(wǎng)頁
if html is None:
print('沒有找到網(wǎng)頁')
目標標簽在網(wǎng)頁中缺失
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)
以上全部為本篇文章的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- Python3實現(xiàn)爬蟲爬取趕集網(wǎng)列表功能【基于request和BeautifulSoup模塊】
- python3 BeautifulSoup模塊使用字典的方法抓取a標簽內(nèi)的數(shù)據(jù)示例
- python利用beautifulSoup實現(xiàn)爬蟲
- python爬蟲入門教程--HTML文本的解析庫BeautifulSoup(四)
- python3第三方爬蟲庫BeautifulSoup4安裝教程
- python爬蟲之BeautifulSoup 使用select方法詳解
- Python爬蟲beautifulsoup4常用的解析方法總結
- Python爬蟲包BeautifulSoup簡介與安裝(一)
- Python爬蟲包 BeautifulSoup 遞歸抓取實例詳解
- Python爬蟲庫BeautifulSoup獲取對象(標簽)名,屬性,內(nèi)容,注釋
- Python爬蟲包BeautifulSoup實例(三)
- python爬蟲學習筆記之Beautifulsoup模塊用法詳解
相關文章
Python利用Matplotlib繪圖無法顯示中文字體的兩種解決方案
matplotlib 是python最著名的繪圖庫,它提供了一整套和matlab相似的命令API,這篇文章主要給大家介紹了關于Python利用Matplotlib繪圖無法顯示中文字體的兩種解決方案,需要的朋友可以參考下2024-03-03
使用matplotlib在Python中繪制數(shù)據(jù)的詳細教程
Python 在處理數(shù)據(jù)方面非常出色,通常,數(shù)據(jù)集 會包括多個變量和許多實例,這使得很難理解數(shù)據(jù)的情況,數(shù)據(jù)可視化是幫助您識別數(shù)據(jù)模式的一種有用方式,本教程將描述如何使用 matplotlib 在 Python 中繪制數(shù)據(jù),需要的朋友可以參考下2024-10-10
Python+matplotlib+numpy實現(xiàn)在不同平面的二維條形圖
這篇文章主要介紹了Python+matplotlib+numpy實現(xiàn)在不同平面的二維條形圖,具有一定借鑒價值,需要的朋友可以參考下2018-01-01
Python數(shù)據(jù)可視化實現(xiàn)正態(tài)分布(高斯分布)
這篇文章主要介紹了Python數(shù)據(jù)可視化實現(xiàn)正態(tài)分布(高斯分布),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-08-08

