我正在尝试使用 python 和 selenium 从网站上查找和下载文件,但我无法使用 xpath 或 id 找到它,因为每天我都想下载特定日期的文件.. href 标签包含日期,所以我尝试了使用“部分链接文本”,但由于某种原因,它在访问昨天的日期时给我错误。 P.S 这是一个自动化任务
<a href="default.aspx?d=Default/XCYs/ABX/v1/2024-02-21">2024-02-21</a>
以上是访问链接,DATE每天都在变化
yesterday = datetime.now() - timedelta(days=1)
yesterday_date = yesterday.strftime("%Y-%m-%d")
# Find an element by partial link text with yesterday's date
partial_link_text = yesterday_date
open_date_folder_yesterday = driver.find_element(By.PARTIAL_LINK_TEXT, partial_link_text)
ActionChains(driver).move_to_element(open_date_folder_yesterday).perform()
使用提供的 HTML,您可以使用 CSS 选择器,
a[href*='2024-02-21']
这基本上只是寻找一个 A 标签,其中 href 包含所需的日期。您更新后的代码看起来像
yesterday = datetime.now() - timedelta(days=1)
yesterday_date = yesterday.strftime("%Y-%m-%d")
open_date_folder_yesterday = driver.find_element(By.CSS_SELECTOR, f"a[href*='{yesterday_date}']")
ActionChains(driver).move_to_element(open_date_folder_yesterday).perform()