av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Python Selenium異常處理的實例分析

瀏覽:4日期:2022-06-26 18:08:39
1、說明

在使用selenium時,不可避免的會遇到一些異常情況,比如超時、沒有找到節(jié)點的錯誤等等。一旦出現(xiàn)這樣的錯誤,程序就不能再運行了。這里我們可以使用tryexcept語句來捕捉異常。

2、實例

from selenium import webdriverfrom selenium.common.exceptions import TimeoutException, NoSuchElementExceptionbrowser = webdriver.Chrome()try: browser.get(’https://www.baidu.com’)except TimeoutException: print(’超時’)try: browser.find_element_by_id(’aa’)except NoSuchElementException: print(’未找到節(jié)點’)finally:browser.close()

關于異常處理的實例擴展:

我是Python的新手,我正在嘗試編寫一個使用硒登錄到Web應用程序并打印一些信息的nagios腳本。到目前為止,該腳本可以按預期工作,但是如果它無法檢索該網(wǎng)站,我希望它向系統(tǒng)發(fā)出警報。這是我所擁有的

#!/usr/bin/env pythonimport sysfrom selenium import webdriverurl = ’<main web site>’systemInformation = ’<sys information site>’logout = ’<log out link>’browser = webdriver.PhantomJS(’<path to phantomjs for headless operation>’)login_username = ’<username>’login_password = ’<password>’try: browser.get(url) username = browser.find_element_by_name('username') password = browser.find_element_by_name('password') username.send_keys(login_username) password.send_keys(login_password) link = browser.find_element_by_name(’loginbutton’) link.click() browser.get(systemInformation) print 'OK: Web Application is Running' for element in browser.find_elements_by_name(’SystemReportsForm’): print element.text browser.get(logout) browser.quit() sys.exit(0)except: print 'WARNING: Web Application is Down!' sys.exit(2)

我希望如果第一部分失敗,那么它將轉到except部分,但是即使有出口,腳本也會打印出try和except。我確定這很簡單,我很想念。

這就是我最終解決此問題的方式,感謝您的幫助

#!/usr/bin/env pythonimport sys, urllib2from selenium import webdriverurl = ’<log in url>’systemInformation = ’<sys info url>’logout = ’<logout url>’browser = webdriver.PhantomJS(’<phantomjs location for headless browser>’)login_username = ’<user>’login_password = ’<password>’def login(login_url,status_url): browser.get(login_url) username = browser.find_element_by_name('username') password = browser.find_element_by_name('password') username.send_keys(login_username) password.send_keys(login_password) link = browser.find_element_by_name(’loginbutton’) link.click() browser.get(status_url) if browser.title == ’Log In’: print 'WARNING: Site up but Failed to login!' browser.get(logout) browser.quit() sys.exit(1) else: print 'OK: Everything Looks Good' for element in browser.find_elements_by_name(’SystemReportsForm’): print element.text browser.get(logout) browser.quit() sys.exit(0)req = urllib2.Request(url)try: urllib2.urlopen(req) login(url,systemInformation)except urllib2.HTTPError as e: print(’CRITICAL: Site Appears to be Down!’) browser.get(logout) browser.quit() sys.exit(2)

解決方案

sys.exit([status])引發(fā)SystemExit(status)異常,這就是執(zhí)行except子句的原因

通過提高SystemExit(status)退出解釋器。如果省略狀態(tài)或無,則默認為零(即成功)。如果狀態(tài)為整數(shù),則將其用作系統(tǒng)退出狀態(tài)。如果是另一種對象,則將其打印出來,并且系統(tǒng)退出狀態(tài)將為1(即失敗)。

刪除sys.exit(0)內部try

到此這篇關于Python Selenium異常處理的實例分析的文章就介紹到這了,更多相關Python Selenium異常處理內容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持好吧啦網(wǎng)!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 欧美日韩黄色一级片 | 亚洲精选一区 | av电影手机在线看 | 一本一道久久a久久精品蜜桃 | 亚洲成人播放器 | 中文字幕日韩欧美一区二区三区 | 99精品免费久久久久久日本 | 高清免费av | 亚洲成人三区 | 最大av在线 | 成人乱人乱一区二区三区软件 | 久久综合国产 | 欧美a在线看 | 日韩视频二区 | 色秀网站 | 青青草久久 | 在线日韩视频 | 久久久久国产 | 伊伊综合网 | 日韩一区在线观看视频 | 国产精品福利网站 | 国产精品国产精品国产专区不片 | 99re在线 | 亚洲精品久久嫩草网站秘色 | 久久av网站| 国产精品一卡二卡三卡 | 精品国产乱码久久久久久蜜退臀 | 国产精品国产三级国产aⅴ原创 | 欧美精品一区三区 | 天天操夜夜爽 | 亚洲性免费 | 97国产爽爽爽久久久 | 久久av网 | 国产高清亚洲 | 久久久久久免费毛片精品 | 国产精品不卡 | 日韩精品不卡 | 91一区二区| 国产精品视频网站 | 中文字幕乱码亚洲精品一区 | 亚洲日韩中文字幕一区 |