首页 > 解决方案 > 按网站上的未知按钮下载 CSV 文件时出现问题

问题描述

我想按我认为是网站上的一个简单按钮来下载 CSV 文件。但是,我在 HTML 代码中找不到要按下的按钮,如果可以的话,它看起来带有一些参数(如果它是类“input-group-addon btn”)。

我以前做过类似但有限的事情,但这看起来不同。我可以在这个网站上找到其他按钮,但不是这个下载 CSV 文件的按钮。它不包含文件的地址,它绝对不是“正常”按钮。我很难在网上找到一些与文件地址链接或普通按钮无关的信息。

from selenium import webdriver
import time

options = webdriver.ChromeOptions()
options.add_argument('--ignore-certificate-errors')
options.add_argument("--test-type")
options.binary_location = "/usr/bin/chromium"
driver = webdriver.Chrome(chrome_options=options)

driver.get('https://www.tennet.eu/electricity-market/transparency-pages/transparency-germany/network-figures/actual-and-forecast-wind-energy-feed-in/')

text_area1 = driver.find_element_by_id('daterange')
text_area1.send_keys("print('23.05.2019 - 23.05.2019')")

submit_button = driver.find_elements_by_xpath('SOMETHING IN HERE')
submit_button.click()

这部分脚本的目标是打开站点,在文本字段中输入今天的日期,然后按下按钮下载 CSV 文件。

标签: pythonseleniumweb-scraping

解决方案


这是你可以做到的:

import time
text_area1 = driver.find_element_by_id('daterange')
text_area1.clear()
text_area1.send_keys("11.05.2019 - 12.05.2019")
#Wait for page to update
time.sleep(1)

#Click submit button
driver.find_element_by_css_selector('.show-calendar .applyBtn').click()
time.sleep(1)

#Download file
driver.find_element_by_css_selector('.icon-download').click()

编辑 使用 css 选择器而不是 xpath


推荐阅读