编辑:在解决问题时接受答案。
我试图从以下网页link获取数据 为了了解selenium的工作原理(实际上我对最后一行的数据不感兴趣,我得到了ElementNotVisibleException错误。我的代码如下所示:
path = mypath
url = 'http://www.bundesliga.de/de/liga/statistik/spieltag/'
#### SCRIPT TO TEST SELENIUM
#### (0) Load driver
driver = webdriver.PhantomJS(path)
driver.set_window_size(1120, 550)
driver.get(url)
#### (1) Define XPATHs
XPATH_MATCHDAY = '//*[contains(@class, "has-data")]'
XPATH_GAMES = "//*[contains(text(), 'mehr zum Spiel')]"
XPATH_TEAMSTATS = "//span[contains(text(), 'Teamstatistik')]"
### (2) Click links to Teamstats
# Select Matchday 1
matchday = driver.find_elements_by_xpath(XPATH_MATCHDAY)[0]
matchday.click()
# Select game one
game = driver.find_elements_by_xpath(XPATH_GAMES)[0]
game.click()
# Select teamstats tab (bottom of page)
teamstats = driver.find_elements_by_xpath(XPATH_TEAMSTATS)[0]
time.sleep(.5)
teamstats.click()
代码应该做什么:
然而,尽管tab TeamStatistick可见,但我还是得到了错误。
我已经非常深入地阅读了stackoverflow上的这个错误,并在最后一行中尝试了以下工作。但是,我得到了TimeoutException。
^{pr2}$我已经用PhantomJS和Chrome尝试过,但无法修复。我有点困惑,因为我试图点击的标签“TeamStatistick”对我来说总是可见的。我试过如果”teamstats.U可见可用。但事实并非如此。(编辑:现在我尝试了。显示了,并且我得到了一个FALSE)。但是我如何才能显示出来呢?这是可能的吗?)
为此,我将感谢任何有关
谢谢你的支持!这实际上是我的第一篇文章。所以请温柔点;-)
由于目标元素位于页面的不可见部分,您可能需要向下滚动以使其可见:
您也可以尝试以下简单方法向下滚动页面:
^{pr2}$相关问题 更多 >
编程相关推荐