[英]AttributeError: '_socketobject' object has no attribute 'error'
[英]AttributeError: type object '_socketobject' has no attribute 'error'
我正在使用python 2.7.10和Phantom JS 1.9.8。
最近,我開始看到有關.close()的問題。
特別:
我將瀏覽器對象設置為`browser = webdriver.PhantomJS()
然后,我創建BeutifulSoup對象:
browser.get(url)
webpage = browser.page_source
soup = BeautifulSoup(webpage, "lxml")
在browser.close()上,我時不時地得到:
...
except socket.error as s_err:
AttributeError: type object '_socketobject' has no attribute 'error'
哪個在“ catch子句”上觸發:
except socket.error as s_err:
我只能假定導致此“ catch”失敗的原因是盡管發生了錯誤,套接字實際上仍已關閉,並且關閉過程中的其他操作已觸發了該錯誤。
假設我是對的,有沒有一種方法可以真正捕獲錯誤?
我有一個finally子句,可確保瀏覽器終止(因此我不會完全崩潰):
finally:
browser.quit()
發現了問題:
except (httplib.HTTPException, socket.error)
的異常子句是錯誤的:
from socket import error as socket_error
import errno
並from socket import error as socket_error
但我的異常子句使用了不存在的socket.error(理論上應該可以,但是...) 我現在拆分了異常,並使用errno test / check:
except socket_error as s_err:
if s_err == errno.ECONNREFUSED or s_err == errno.ECONNRESET:
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.