为什么不可点击,但execute_script有意义。 href中的Python,Selenium,JS

时间:2018-03-05 10:02:15

标签: javascript python selenium web-crawler

在Python中,使用Selenium,我试图通过爬虫自动获取有关NAE成员的一些信息。所以我从这个page开始。

我通过xpath "//*[@title=\"Next Page\" and @class=\"next_page\"]"找到了下一页的元素,我确信这是正确的。

然后我发现我无法点击'在这个元素上,这意味着我无法进入下一页。

现在我已经发现使用它是有道理的:

element.execute_script 

在元素的href中执行javascript,并获取下一页。

所以,我的问题是,为什么我得到一个不可点击的异常,以及为什么我可以这样做execute_script?

无论如何,非常感谢阅读这个问题的人,我非常感谢您的所有评论。

谢谢。

1 个答案:

答案 0 :(得分:0)

  1. 尝试使用显式等待:
  2. element = ui.WebDriverWait(driver,10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, ".next_page")))

    1. 在点击下一页之前滚动到此元素:
    2. driver.execute_script("arguments[0].scrollIntoView(true);", element)

      1. 然后点击此按钮:
      2. element.click()

        希望它可以帮到你!