这是我的代码:
for i in range(1,20):
driver.find_element_by_link_text('Next').click()
time.sleep(5)
soup = BeautifulSoup(driver.page_source, 'html.parser')
token_holders = token_holders + soup.find_all('tr')
del token_holders[50*i]
time.sleep(5)
我希望webdriver继续单击“下一步”,直到它不能输入它应该在for循环中单击的次数,但我不知道我该怎么做
答案 0 :(得分:1)
只需将for
循环替换为while
循环,如下所示:
from selenium.common.exceptions import NoSuchElementException
while True:
try:
driver.find_element_by_link_text('Next').click()
except NoSuchElementException:
break
time.sleep(5)
soup = BeautifulSoup(driver.page_source, 'html.parser')
token_holders = token_holders + soup.find_all('tr')
del token_holders[50*i]
time.sleep(5)
这应该允许您在可能的情况下单击"Next"
按钮,或者在页面上没有找到按钮的情况下停止