我有一个节目要去reddit.com网站并从中获取html元素。然而,大约十分之一的时间,旧的reddit网站出现了,我不得不重新启动程序。有没有更简单的方法来处理这个错误(基本上从顶部重新启动)?我似乎一试就想不出来。你知道吗
browser = webdriver.Chrome(executable_path=r'C:\Users\jacka\Downloads\chromedriver_win32\chromedriver.exe')
browser.get("https://www.reddit.com/")
# grabs the html tag for the subreddit name
elem = browser.find_elements_by_css_selector("a[data-click-id='subreddit']")
#in the case that old reddit loads, it restarts the browser.
if len(elem) == 0:
browser.close()
browser = webdriver.Chrome(executable_path=r'C:\Users\jacka\Downloads\chromedriver_win32\chromedriver.exe')
browser.get("https://www.reddit.com/")
# grabs the html tag for the subreddit name
elem = browser.find_elements_by_css_selector("a[data-click-id='subreddit']")
通过@HSK解决。我把代码放在一个
while
循环中运行,直到得到正确版本的reddit。你知道吗正如@HSK在评论中提到的,您可以使用无限
while
循环不断尝试,直到毫无例外地得到您想要的东西。请在离开前添加finally
子句以关闭browser
句柄。你知道吗相关问题 更多 >
编程相关推荐