Причина root проблемы связана с тем, что ссылка «загрузить файл» на веб-сайте (postimages.org) не является полем ввода.
Selenium webdriver для Python позволяет загружать файлы через использование метода send_keys , только если кнопка загрузки является полем ввода.
Ожидается (для работы send_keys)
<input id="uploadFile" type="file">
Собственно найдено (причина почему send_keys не работает)
<span id="uploadFile" class="btn btn-lg dz-clickable" >
Как исправить проблему?
Подход of send_keys не будет работать для этого веб-сайта, так как у него нет элемента ввода, необходимого для webdriver. Следовательно, для этой цели необходимо использовать альтернативный подход.
Веб-сайт - https://postimages.org/nl/ поддерживает функцию «копировать + вставить» для загрузки изображений.
Это может выполняется в python следующим образом:
Шаг 1: Копирование изображения в системный буфер обмена
Шаг 2: Используйте Webdriver, чтобы щелкнуть на веб-странице.
Шаг 3: Используйте webdriver для отправки «CTRL + V» на веб-страницу. Убедитесь, что изображение загружено.