Python爬蟲包BeautifulSoup異常處理(二)
面對(duì)網(wǎng)絡(luò)不穩(wěn)定,頁面更新等問題,很可能出現(xiàn)程序異常的問題,所以我們要對(duì)程序進(jìn)行一些異常處理。大家可能覺得處理異常是一個(gè)比較麻煩的活,但在面對(duì)復(fù)雜網(wǎng)頁和任務(wù)的時(shí)候,無疑成為一個(gè)很好的代碼習(xí)慣。
網(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)頁')
目標(biāo)標(biāo)簽在網(wǎng)頁中缺失
try:
#不存在的標(biāo)簽
content = bsObj.nonExistingTag.anotherTag
except AttributeError as e:
print('沒有找到你想要的標(biāo)簽')
else:
if content == None:
print('沒有找到你想要的標(biāo)簽')
else:
print(content)
實(shí)例
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)
以上全部為本篇文章的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Python3實(shí)現(xiàn)爬蟲爬取趕集網(wǎng)列表功能【基于request和BeautifulSoup模塊】
- python3 BeautifulSoup模塊使用字典的方法抓取a標(biāo)簽內(nèi)的數(shù)據(jù)示例
- python利用beautifulSoup實(shí)現(xiàn)爬蟲
- python爬蟲入門教程--HTML文本的解析庫BeautifulSoup(四)
- python3第三方爬蟲庫BeautifulSoup4安裝教程
- python爬蟲之BeautifulSoup 使用select方法詳解
- Python爬蟲beautifulsoup4常用的解析方法總結(jié)
- Python爬蟲包BeautifulSoup簡(jiǎn)介與安裝(一)
- Python爬蟲包 BeautifulSoup 遞歸抓取實(shí)例詳解
- Python爬蟲庫BeautifulSoup獲取對(duì)象(標(biāo)簽)名,屬性,內(nèi)容,注釋
- Python爬蟲包BeautifulSoup實(shí)例(三)
- python爬蟲學(xué)習(xí)筆記之Beautifulsoup模塊用法詳解
相關(guān)文章
Django學(xué)習(xí)之路之請(qǐng)求與響應(yīng)
這篇文章主要為大家詳細(xì)介紹了Django的請(qǐng)求與響應(yīng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-02-02
通過Python pyecharts輸出保存圖片代碼實(shí)例
這篇文章主要介紹了通過Python pyecharts輸出保存圖片代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11
python tkinter窗口最大化的實(shí)現(xiàn)
這篇文章主要介紹了python tkinter窗口最大化的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07

