Select 使用 Selenium 的输入元素
Select an input element using Selenium
我正在尝试单击此按钮以转到登录页面。
我的代码是:
from selenium import webdriver
driver = webdriver.Chrome()
driver.get('http://moodle.tau.ac.il/')
可以正常工作,但我只能使用
找到表格
loginform = driver.find_element_by_xpath("//form[@id='login']/")
我不知道如何找到按钮,这是非常基本的东西,但我没有找到任何好的例子。
该页面有两个相同的登录表单,而您的 XPath returns 是隐藏的。
所以对于可见的:
from selenium import webdriver
driver = webdriver.Chrome()
driver.get(r"http://moodle.tau.ac.il/")
driver.find_element_by_css_selector("#page-content #login input[type=submit]").click()
或使用 XPath:
from selenium import webdriver
driver = webdriver.Chrome()
driver.get(r"http://moodle.tau.ac.il/")
driver.find_element_by_xpath("id('page-content')//form[@id='login']//input[@type='submit']").click()
您可以使用 @ChrisP 提到的 XPath 找到它
您可以通过 CSS 选择器找到它:“#login input[type='text']”
或者您也可以只提交表格... loginForm.submit()
理想情况下,您应该为该按钮设置一个唯一 ID,以便于查找。
这将点击 moodle.tau.ac.il 页面上的登录按钮。
driver.find_element_by_xpath(".//*[@id='login']/div/input").click()
行在页面上找到登录按钮并单击它。 Xpath 只是一种选择器类型,您可以将其与 selenium 一起使用以在页面上查找 Web 元素。您还可以使用 ID、类名和 CSS 选择器。
from selenium import webdriver
driver = new webdriver.Chrome()
driver.get('moodle.tau.ac.il')
# This will take you to the login page.
driver.find_element_by_xpath(".//*[@id='login']/div/input").click()
# Fills out the login page
elem = driver.find_element_by_xpath("html/body/form/table/tbody/tr[2]/td/table/tbody/tr[1]/td[2]/input")
elem.send_keys('Your Username')
elem = driver.find_element_by_xpath("html/body/form/table/tbody/tr[2]/td/table/tbody/tr[3]/td[2]/input")
elem.send_keys('Your ID Number')
elem = driver.find_element_by_xpath("html/body/form/table/tbody/tr[2]/td/table/tbody/tr[1]/td[2]/input")
elem.send_keys('Your Password')
driver.find_element_by_xpath("html/body/form/table/tbody/tr[2]/td/table/tbody/tr[7]/td[2]/input").click()
我正在尝试单击此按钮以转到登录页面。 我的代码是:
from selenium import webdriver
driver = webdriver.Chrome()
driver.get('http://moodle.tau.ac.il/')
可以正常工作,但我只能使用
找到表格loginform = driver.find_element_by_xpath("//form[@id='login']/")
我不知道如何找到按钮,这是非常基本的东西,但我没有找到任何好的例子。
该页面有两个相同的登录表单,而您的 XPath returns 是隐藏的。 所以对于可见的:
from selenium import webdriver
driver = webdriver.Chrome()
driver.get(r"http://moodle.tau.ac.il/")
driver.find_element_by_css_selector("#page-content #login input[type=submit]").click()
或使用 XPath:
from selenium import webdriver
driver = webdriver.Chrome()
driver.get(r"http://moodle.tau.ac.il/")
driver.find_element_by_xpath("id('page-content')//form[@id='login']//input[@type='submit']").click()
您可以使用 @ChrisP 提到的 XPath 找到它
您可以通过 CSS 选择器找到它:“#login input[type='text']”
或者您也可以只提交表格... loginForm.submit()
理想情况下,您应该为该按钮设置一个唯一 ID,以便于查找。
这将点击 moodle.tau.ac.il 页面上的登录按钮。
driver.find_element_by_xpath(".//*[@id='login']/div/input").click()
行在页面上找到登录按钮并单击它。 Xpath 只是一种选择器类型,您可以将其与 selenium 一起使用以在页面上查找 Web 元素。您还可以使用 ID、类名和 CSS 选择器。
from selenium import webdriver
driver = new webdriver.Chrome()
driver.get('moodle.tau.ac.il')
# This will take you to the login page.
driver.find_element_by_xpath(".//*[@id='login']/div/input").click()
# Fills out the login page
elem = driver.find_element_by_xpath("html/body/form/table/tbody/tr[2]/td/table/tbody/tr[1]/td[2]/input")
elem.send_keys('Your Username')
elem = driver.find_element_by_xpath("html/body/form/table/tbody/tr[2]/td/table/tbody/tr[3]/td[2]/input")
elem.send_keys('Your ID Number')
elem = driver.find_element_by_xpath("html/body/form/table/tbody/tr[2]/td/table/tbody/tr[1]/td[2]/input")
elem.send_keys('Your Password')
driver.find_element_by_xpath("html/body/form/table/tbody/tr[2]/td/table/tbody/tr[7]/td[2]/input").click()