Загрузить файл на сайт, python selenium

Помогите разобраться, нужно загрузить видео на сайт без диалогового окна, Знаю что это можно сделать через <input type="file" введите сюда описание изображения Пытался сделать так

ByfileInput = browser.find_element(By.XPATH, '//*[@id="root"]/div/div/div/div/div[2]/div[1]/div/input') StringfilePath = "/Users/video/1.mov" ByfileInput.send_keys(StringfilePath)

и даже так

elem = driver.find_element(By.XPATH, '//*[@id="root"]/div/div/div/div/div[2]/div[1]/div/input')
driver.execute_script("arguments[0].style.display = 'block';", elem)
ByfileInput = driver.find_element(By.XPATH, '//*[@id="root"]/div/div/div/div/div[2]/div[1]/div/input')  
StringfilePath = "/Users/video/1.mov"   
ByfileInput.send_keys(StringfilePath)

все четно, selenium будто не видит элемент, вообщем не понимаю.

ошибка:

selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//*[@id="root"]/div/div/div/div/div[2]/div[1]/div/input"}

ссылка на страницу- https://www.tiktok.com/upload?lang=ru-RU


Ответы (1 шт):

Автор решения: web developer

как я понимаю selenium не видит элемент ввода Пожалуйста, попробуйте это с помощью xpath. Оба должны работать.

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



element = WebDriverWait(driver, 20).until(EC.presence_of_element_located((By.XPATH, '//input[@id="w0-find-product-search-bar-search-field"]')))
element.send_keys("1234")

или же

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

element = WebDriverWait(driver, 20).until(EC.presence_of_element_located((By.XPATH, '//input[@class="find-product"]')))
element.send_keys("1234") 

или же

driver.execute_script(("document.getElementById('w0-find-product-search-bar-search-field').value='1234'"))
→ Ссылка