Это python скрипт для загрузки файла на сайт с селеном - PullRequest
0 голосов
/ 16 апреля 2020

я пытаюсь загрузить файл на этот веб-сайт 'https://convertir-pdf.com/', занимающийся веб-копированием с python блокнотом для класной работы, но я не могу найти правильную часть html для загрузки или нажмите кнопку. Мой код:

from selenium import webdriver
import os

chrome_path = "D:\Descargas\chromedriver_win32\chromedriver.exe"
driver = webdriver.Chrome(chrome_path)
driver.get('https://avi-a-mp4.convertir-pdf.com/')
driver.maximize_window()
driver.switch_to_frame(0)
driver.find_element_by_id("download").send_keys(mypath+ '\\' + onlyfiles[7])
#driver.find_element_by_id('single-upload-form').send_keys(mypath+ '\\' + onlyfiles[7])
#driver.find_element_by_id('single-upload-form').click()

и ошибка, которая у меня все время такова:

NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"[id="download"]"}


(Session info: chrome=81.0.4044.92)

1 Ответ

0 голосов
/ 16 апреля 2020

Используйте ниже xpath для решения вашей проблемы

wait = WebDriverWait(driver, 10)
wait.until(EC.element_to_be_clickable((By.XPATH, "//span[@id='resumable-browse']"))).click()

Примечание: , пожалуйста, добавьте ниже импорта в ваше решение

from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait

Обновленное решение:

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait

driver  = webdriver.Chrome(executable_path=r"C:\New folder\chromedriver.exe")
driver.get("https://avi-a-mp4.convertir-pdf.com/")
driver.maximize_window()

wait = WebDriverWait(driver, 10)
wait.until(EC.element_to_be_clickable((By.XPATH, "//span[@id='resumable-browse']"))).click()

Выход:

enter image description here

...