Проблемы с загрузкой файла CSV при нажатии неизвестной кнопки на сайте - PullRequest
1 голос
/ 23 мая 2019

Я хочу нажать, как мне показалось, простую кнопку на веб-сайте, чтобы загрузить файл 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.

1 Ответ

0 голосов
/ 23 мая 2019

Вот как вы можете это сделать:

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()

EDIT Использование селекторов CSS вместо xpath

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...