#python #browser
Вопрос:
Рабочий процесс:
- Веб-сайт:
- не имеет API
- требуется войти в систему
- нажатие на кнопку для загрузки файла
- Является кнопкой Javascript
- сохраните файл в папке для загрузки
Вопрос:
- Есть ли способ сделать это с помощью python?
Комментарии:
1. Селен? Вы пробовали это сделать?
2. Я только что наткнулся на Селен. После публикации этого. Является ли селен лучшим для этого? или есть другие рекомендуемые альтернативы
Ответ №1:
Взгляните на селен
Он использует драйвер chrome (или firefox) и может имитировать javascript.
Вот пример нажатия кнопки:
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('http://codepad.org')
# click radio button
python_button = driver.find_elements_by_xpath("//input[@name='lang' and @value='Python']")[0]
python_button.click()
# type text
text_area = driver.find_element_by_id('textarea')
text_area.send_keys("print('Hello World')")
# click submit button
submit_button = driver.find_elements_by_xpath('//*[@id="editor"]/table/tbody/tr[3]/td/table/tbody/tr/td/div/table/tbody/tr/td[3]/input')[0]
submit_button.click()
Комментарии:
1. Я только что наткнулся на это, но мне было интересно, является ли селен лучшим доступным вариантом?
Ответ №2:
Я предлагаю вам использовать Selenium для имитации среды браузера.
- Попробуйте войти в систему, указав свои учетные данные с помощью selenium.
- найдите тег кнопки и нажмите на него с помощью html-тега-идентификатора.
- Попробуйте найти местоположение загрузки файла / попробуйте загрузить его напрямую с помощью кнопки
Комментарии:
1. Это будет общее решение, но если вы хотите получить код, пожалуйста, укажите адрес веб-сайта.
2. Я только что наткнулся на это, но мне было интересно, является ли селен лучшим доступным вариантом?
3. Селен является широко используемым инструментом для автоматизированного тестирования браузеров и веб-сайтов.