Der Code funktioniert, wenn Sie die ein-Tags innerhalb der optionmore Klassen wählen:
from selenium import webdriver
driver = webdriver.PhantomJS()
driver.get("http://justbet.co.ke/index.php?option=com_justbet&league=1539&Itemid=123")
options = driver.find_elements_by_xpath("//td[@class='optionmore']/a")
print(driver.find_elements_by_xpath("//td[@class='suboption ']"))
for opt in options:
opt.click()
print(driver.find_elements_by_xpath("//td[@class='suboption ']"))
den Code Lauf oben:
In [27]: from selenium import webdriver
In [28]: driver = webdriver.PhantomJS()
In [29]: driver.get("http://justbet.co.ke/index.php?option=com_justbet&league=1539&Itemid=123")
In [30]: options = driver.find_elements_by_xpath("//td[@class='optionmore']/a")
In [31]: print(len(driver.find_elements_by_xpath("//td[@class='suboption ']")))
0
In [32]: for opt in options:
....: opt.click()
....:
In [33]: print(len(driver.find_elements_by_xpath("//td[@class='suboption ']")))
270
Sie Holen Sie sich alle tds mit den gewünschten Daten.
Wenn ich die Seitenquelle für beide Ergebnisse vergleiche, sind sie unterschiedlich. Mit firefox enthält die Quelle die Teile, die durch Klicken auf den Javascript-Link aktiviert werden, während mit phantomjs es –