如何使用 Python 硒

How to use 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

单击 (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

这对我有用:

from selenium import webdriver


chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--window-size=1420,1080')
chrome_options.add_argument('--headless')
chrome_options.add_argument('--disable-gpu')
chrome_options.add_argument("--disable-dev-shm-usage")
driver = webdriver.Chrome(chrome_options=chrome_options)
driver.get('https://gruenkraft-zufriedenheit.de/ ')
element = driver.find_element_by_tag_name('button_tag_name_youre_looking_for')
element.click()

从那时起我就用beautifulsoup继续我需要做的事情

希望这对您有所帮助:)

您可以尝试使用以下代码。

  driver.find_element_by_xpath("//span[text()='PayPal-Konto']").click()
  driver.find_element_by_id("paypal-email").send_keys("text")

根据评论更新。