用Selenium按Javascript生成的按钮?

时间:2014-02-25 18:24:54

标签: python selenium

我正在尝试抓取此网站中表格的内容:breachlevelindex。到目前为止,我使用以下内容成功获取了表格中前20行的内容:

    url = 'http://www.breachlevelindex.com/index.html?utm_source=bli-pr-20140217&utm_medium=press-release&utm_campaign=breach-level-index#!breach-database'
    driver = webdriver.Firefox()
    driver.get(url)
    driver.set_window_position(0, 0)
    driver.set_window_size(100000, 200000)
    driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
    time.sleep(5) # wait to load

此时我可以抓取表格内容,但是如何以编程方式按下next按钮并重新加载页面内容?

谢谢!

2 个答案:

答案 0 :(得分:4)

使用CSS找到下一个按钮,然后单击它,如下所示:

driver.find_element_by_css_selector(".sprite.next-page.clickable").click()

或使用像这样的javascript:

driver.execute_script("document.querySelector('.sprite.next-page.clickable').click()")

答案 1 :(得分:1)

我认为这对你有用:

driver.find_element_by_css_selector("span.next-page").click()