Python selenium尝试,除了

时间:2014-12-05 00:01:12

标签: python python-2.7

如果我正在运行以下内容:

title = browser.find_element_by_xpath("//h1[@class='title']").text
views = browser.find_element_by_xpath("//span[@class='count']").text
likes = browser.find_element_by_xpath("//span[@class='votesUp']").text

但由于某种原因在所述页面上找不到其中一个元素,我如何告诉python只是传递并继续前进。它似乎不时在我身上崩溃。我已经尝试了平常但是因为我还没有完全确认什么标题不起作用。

我正在创建一个简单的屏幕抓取工具,只需浏览网站即可打开视频并抓取信息。然后我将此信息导出到csv,如下所示:

b = open('test.csv', 'ab')
a = unicodecsv.writer(b)
data = [[title, views, likes]]
a.writerows(data)

由于其中一些页面可能不包含崩溃的xpath,有没有解决方法呢?

1 个答案:

答案 0 :(得分:0)

我想当你谈到Selenium时,你的意思是WebDriver,如果是这样的话,它会附带common.exceptions模块,其中包含您可以在try: except:块中捕获的所有异常,例如

selenium.common.exceptions.NoSuchElementException

此处有更多例外https://selenium.googlecode.com/svn/trunk/docs/api/py/common/selenium.common.exceptions.html