Пишу вот такую функцию:
def main(link):
browser = webdriver.Chrome()
options = webdriver.ChromeOptions()
options.add_argument(f"user-agent={user_agent()}") # подключение постоянной смены юзерагента
try:
browser.get("https://ru.savefrom.net/")
video_input = browser.find_element(By.XPATH, '//*[@id="sf_url"]')
video_input.send_keys(link)
time.sleep(5)
except Exception as es:
print(es)
finally: # обязаельное поле для чистки потоков
browser.close()
browser.quit
Почитал староверфлоу, доку веб-дравера, везде пишут By.XPATH, By.ID, я как только не пробовал, в том числе в кавычки брать первый аргумент и стирать "By."
Python выдает такие ошибки:
name 'By' is not defined # Если (By.XPATH, '//*[@id="sf_url"]')
name 'XPATH' is not defined # Если (XPATH, '//*[@id="sf_url"]')
Message: invalid argument: invalid locator # Если ('By.XPATH', '//*[@id="sf_url"]') и ('XPATH', '//*[@id="sf_url"]')