我正在尝试使用Python和Selenium。我的目标是使自己登录Discord(https://discordapp.com/login。但这是问题所在。我无法选择电子邮件和密码框。但是最糟糕的部分是尝试在服务器上选择文本框。我尝试了所有操作,甚至通过XPath进行了定位,但似乎都做不到,而且,在ATOM上执行此操作也不是最好的主意,因为我没有收到任何错误消息:P。选择电子邮件文本框。
from selenium
import webdriver
from selenium.webdriver.common.keys
import Keys
browser = webdriver.Firefox()
browser.get('https://discordapp.com/login')
assert 'discordapp' in browser.title
elem = browser.find_element_by_name('textarea')# this is the part where i need help
elem.send_keys('test' + Keys.ENTER)
答案 0 :(得分:4)
对于电子邮件,此CSS选择器应该可以工作:
input[type='email']
输入密码:
input[type='password']
我已经测试了以下代码:
browser.get("https://discordapp.com/login")
elem = browser.find_element_by_css_selector("input[type='email']")# this is the part where i need help
elem.send_keys("itsolidude@imail.com")
elem1 = browser.find_element_by_css_selector("input[type='password']")# this is the part where i need help
elem1.send_keys("password")
login_button = browser.find_element_by_xpath("//div[text()='Login']/parent::button")
login_button.click()
这在我的机器上工作正常。
答案 1 :(得分:0)
您需要检查div容器并将其添加到xpath中。
尝试以下代码,并调试缩进,以防stackoverflow无法正确传输它们(嗯,我不知道如何正确正确地进行此操作。)
length = 100;
pageSize = 5;
pageSizeOptions: number[] = [10, 20, 30];
答案 2 :(得分:0)
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import Select
driver = webdriver.Chrome()
driver.get("https://discord.com/login")
time.sleep(6)
username_input = driver.find_element_by_name('email')
username_input.send_keys("enter-your-username-here")
password_input = driver.find_element_by_name('password')
password_input.send_keys("Enter-your-password-here")
login_button = driver.find_element_by_xpath('//*[@id="app-mount"]/div[2]/div/div[2]/div/div/form/div/div/div[1]/div[3]/button[2]')
login_button.click()