Загрузка фотографий в Craigslist с помощью Python и Selenium
Используя python3, selenium с firefox на windows10: эта программа проста. он сразу переходит на страницу "опубликовать новый список", в которую загружаются несколько фотографий, а затем отправлять. проблема в том, что я не могу управлять диалоговым окном, чтобы перейти к правильному файлу с селеном.
browser = webdriver.Firefox()
browser.get('https://post.craigslist.org/k/lPbhT6Lh5RGBKb-uS1zr0g/g2NjN?lang=en&cc=us&s=editimage')
#opens to craigslists 'Upload/Edit Images' page
add_imgs_btn = browser.find_element_by_id('plupload')
#find the 'add images' button
add_imgs_btn.click()
#clicks the button which opens the dialog box, which is not operable from selenium
add_imgs_btn.send_keys(filepath)
Я немного читал, и я понял, что мне нужно использовать send_keys() для "входного файла", но я все еще настолько нов в области селена и программирования, что я не совсем понимаю концепцию. Моя идея состояла в том, чтобы использовать SendKeys из AutoIt, но я даже не могу понять, почему AutoIt не будет устанавливаться на мой компьютер. так что я надеюсь, что кто-то может пролить немного света на то, как отправить заранее определенное имя пути, чтобы я мог загрузить фотографии. любая помощь приветствуется, спасибо!
1 ответ
Вы не должны работать с <button>
элемент, но с <input>
вместо этого используйте следующий код:
browser.find_element_by_xpath("//input[@type='file']").send_keys(filepath)