我正在尝试从博彩网站进行一些网络抓取:
作为过程的一部分,我必须点击左侧“收藏夹”部分下的不同按钮来选择不同的比赛。
我们以 ENG Premier League 按钮为例。我将按钮标识为:
XPath 为://*[@id="SportMenuF"]/div[3],ID 为 91。
我点击按钮的代码如下:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
chrome_path = "C:\Python27\Scripts\chromedriver_win32\chromedriver.exe"
driver = webdriver.Chrome(chrome_path)
driver.get("URL Removed")
content = driver.find_element_by_xpath('//*[@id="SportMenuF"]/div[3]')
content.click()
不幸的是,我在运行脚本时总是收到此错误消息:
"no such element: Unable to locate element:
{"method":"xpath","selector":"//*[@id="SportMenuF"]/div[3]"}"
我尝试了不同的标识符,例如 CCS Selector、ID 以及如上例所示的 Xpath。我也尝试使用等待和显式条件。这些都没有奏效。
我还尝试从网站上抓取一些值,但没有成功:
from selenium import webdriver
from selenium.webdriver.common.by import By
chrome_path = "C:\Python27\Scripts\chromedriver_win32\chromedriver.exe"
driver = webdriver.Chrome(chrome_path)
driver.get("URL removed")
content = driver.find_elements_by_class_name('price-val')
for entry in content:
print entry.text
同样的问题,什么都不显示。
该网站嵌入了来自不同网站的 iframe。这可能是我问题的原因吗?我也尝试直接从 iframe URL 中抓取,但也没有用。
我将不胜感激任何建议。
相关分类