Как отдельно отправить письмо в форму

Я сделал веб-контактную форму, мое электронное письмо отправляется для подписки на почтовый ящик, я хочу отправить электронное письмо только в форму. Пожалуйста помогите

driver.get('https://shop.rtrpilates.com/')
driver.find_element_by_partial_link_text('Contact'),click
try:
    username_box = driver.find_element_by_xpath('//input[@type = "email"]')
    username_box.send_keys("[email protected]")

Я не понимаю, как я могу создать блок между этим, помогите пожалуйста Заранее спасибо

Что насчет вашего предыдущего вопроса? Вы пробовали данный там ответ?

Prophet 30.11.2022 15:11

@Prophet Эй, я хочу отправить электронное письмо только в форму, но как только я открываю веб-страницу, электронное письмо отправляется в область электронной почты для подписки. Как я могу создать блок, в котором электронная почта отправляется только в контактную форму

abu uddi 30.11.2022 18:54

Понятно. Постараюсь помочь в ближайшее время

Prophet 30.11.2022 18:57

@Prophet спасибо тебе благодарна Жду тебя

abu uddi 30.11.2022 19:10

Да, моя предыдущая проблема решена. благодарен вам Теперь я застрял с этой проблемой, я не могу создать блок, чтобы остановить отправку электронной почты в область подписки, прежде чем открывать форму контактной страницы .. @Prophet

abu uddi 30.11.2022 19:16

@Prophet, эй, это работает для этого веб-сайта, но не работает для другого веб-сайта driver.find_element_by_partial_link_text('Contact') ??? driver.find_element_by_xpath('//input[@type = "email"]').click‌​() Я хочу отправить команду электронной почты на основе ссылки на контактный URL-адрес. Если контактной ссылки нет, то команда электронной почты будет пройдена.

abu uddi 30.11.2022 21:37

Прежде всего правило: вы не можете создать общий код Selenium, который будет работать на всех веб-сайтах, поскольку каждый сайт имеет свою собственную структуру для каждой веб-страницы. Даже если есть несколько сайтов с текстом Contact или Contact Us на какой-либо кнопке меню, в большинстве случаев код, работающий на сайте А, не будет работать на сайте Б.

Prophet 30.11.2022 21:41

Аналогично: если у вас есть код внешнего интерфейса для какой-то страницы/элемента какого-то веб-сайта - вам все равно придется создать новый код для другого сайта. возможно какие-то детали будут похожи, но все равно нельзя ничего копипастить с одного сайта на другой.

Prophet 30.11.2022 21:43

Также этот вопрос решен и должен быть указан как решенный. Если у вас есть дополнительные вопросы - пожалуйста, откройте новые вопросы для этого.

Prophet 30.11.2022 21:44

Добро пожаловать, отец Уди :)

Prophet 30.11.2022 21:49

@Prophet, не могли бы вы проверить мой новый вопрос? пророк

abu uddi 04.12.2022 13:40

Я не вижу новых вопросов от вас

Prophet 04.12.2022 13:42

@Пророк stackoverflow.com/questions/74675138/…

abu uddi 04.12.2022 14:14

Я никогда не пользовался twitter API, поэтому не знаю, извините

Prophet 04.12.2022 14:19
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
14
52
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Кажется, ваша основная проблема заключается в том, что вы пытаетесь использовать устаревшие методы find_element_by_*. Ни один из них не поддерживается Selenium 4.
Также в коде, которым вы поделились, отсутствуют задержки для ожидания того, что элементы станут кликабельными и т. д.
Работает следующий короткий код:

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

options = Options()
options.add_argument("start-maximized")

webdriver_service = Service('C:\webdrivers\chromedriver.exe')
driver = webdriver.Chrome(options=options, service=webdriver_service)
wait = WebDriverWait(driver, 10)

url = "https://shop.rtrpilates.com/"
driver.get(url)

wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, ".header__inline-menu a[href*='contact']"))).click()
wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, ".contact__fields input[type='email']"))).send_keys("[email protected]")

Результат

Еще раз спасибо @Prophet, эй, это работает для этого веб-сайта, но не работает для другого веб-сайта driver.find_element_by_partial_link_text('Contact') ??? driver.find_element_by_xpath('//input[@type = "email"]').click‌​() Я хочу отправить команду электронной почты на основе ссылки на контактный URL-адрес. Если нет контактной ссылки, то команда электронной почты будет пройдена

abu uddi 30.11.2022 21:37

Другие вопросы по теме