![](/img/trans.png)
[英]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.