我正在try 使用Selify和Python网络抓取来根据我当地的公共交通时间表来 Select 路由的下拉选项.以下是指向该站点的链接:https://tmweb.pacebus.com/TMWebWatch/LiveDepartureTimes
我遇到的问题是,这句话:
find_route_takin = driver.find_element(By.CLASS_NAME,"active-result")
生成一个错误,内容为:
消息:无此类元素:找不到元素:{"方法":"css Select 器"," Select 器":".active-Result"}
以下是我如何try 完成任务的代码:
import time
from bs4 import BeautifulSoup
from datetime import datetime
from selenium import webdriver
from selenium.webdriver.common.by import By
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.support.ui import Select
driver = webdriver.Chrome(ChromeDriverManager().install())
driver.maximize_window()
driver.get("https://tmweb.pacebus.com/TMWebWatch/LiveDepartureTimes")
driver.find_element(By.ID, "MainContent_routeList_chosen")
find_route_takin = driver.find_element(By.CLASS_NAME,"active-result")
select_route = Select(find_route_takin)
select_route.select_by_visible_text("565 - Grand Avenue")
time.sleep(20)
在用于路由的第一个下拉列表的站点的HTML中,有一个ul
对象,其中包含代表每条路由的li
个对象.我试着浏览了各种YouTube视频,但找不到解决问题的办法.我读到过,也许我将不得不使用XPath而不是CLASS_NAME,但是当我try 通过右键单击并 Select Copy XPath来复制XPath时,仍然会得到相同的错误消息提示.我想要的是,当我运行程序时,会出现一个 chromium 色窗口,并 Select 了565-Grand Avenue路由.我遇到的错误是
消息:无此类元素:找不到元素:{"方法":"css Select 器"," Select 器":".active-Result"}