首页 > 解决方案 > 如何使用 Python Selenium

问题描述

我有一段 HTML 代码,可让您在点击按钮后将电子邮件放入输入字段(单击按钮后出现文本字段):

<div class="column-left w-col w-col-5">
<label class="radio-button-field-2 left w-radio">
<input type="radio" id="paypal" name="payout" value="paypal" data-name="payout" required="" class="w-form-formradioinput radio-button w-radio-input">
<span for="paypal" class="radio-button-label-2 w-form-label">PayPal-Konto</span>
</label>
</div>

<div class="block-payout-paypal" style="">
<input type="email" class="text-field-2 w-input" maxlength="256" name="paypal-email-2" data-name="Paypal Email 2" placeholder="max.moritz@beispiel.com" id="paypal-email" required="">
</div>

我现在的目标是编写一个脚本,允许我单击按钮,然后归档输入字段。该网站是:https ://gruenkraft-zufriedenheit.de/ 我正在寻找的按钮称为:PayPal-Konto

标签: pythonpython-3.xseleniumurlencode

解决方案


单击(PayPal-Konto)按钮时,您会看到一个输入,您可以借助以下代码找到它。

driver = webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(30)
driver.get("https://gruenkraft-zufriedenheit.de/")
wait = WebDriverWait(driver, 10)
wait.until(EC.visibility_of_element_located((By.XPATH, "//span[text()='PayPal-Konto']"))).click()#ActionChains(driver).move_to_element(wait.until(EC.visibility_of_element_located((By.XPATH, "//span[text()='PayPal-Konto']")))).click().perform()
wait.until(EC.visibility_of_element_located((By.CSS_SELECTOR, "input[name='paypal-email-2']"))).send_keys('some-email@gmail.com')

进口:

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

推荐阅读