Python Selenium:如何单击元素

时间:2018-03-16 13:16:49

标签: python facebook selenium selenium-webdriver

程序: Python + Selenium

情况:我正在尝试运行脚本来自动登录Facebook并打开我的Facebook主页

问题:我是初学者,我不确定我的python配置是否存在问题,或者我只是在做代码错误。代码在最后一行停止。 我是如何检索元素类的?我去了Facebook页面并且我检查了配置文件按钮元素并且我复制了它但它无法正常工作(_1vp5 f_click)

解决方案:您能否指导我找到主页元素的最佳方式

以下是我的代码:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

driver = webdriver.Chrome(executable_path=r"chromedriver.exe")
driver.get("http://www.facebook.com")

usr = "xxxxx"
pwd = "yyyy"

assert "Facebook" in driver.title
elem = driver.find_element_by_id("email")

elem.send_keys(usr)
elem = driver.find_element_by_id("pass")

elem.send_keys(pwd)
elem.send_keys(Keys.RETURN)

driver.find_element_by_class("_1vp5 f_click").click()

代码输出:

Traceback (most recent call last):
File "C:/Users/shouks/MyPythonScripts/test1.py", line 23, in <module>
driver.find_element_by_class("_1vp5 f_click").click()
AttributeError: 'WebDriver' object has no attribute 'find_element_by_class'

1 个答案:

答案 0 :(得分:2)

没有这样的方法find_element_by_class

请改用此方法:find_element_by_class_name

http://selenium-python.readthedocs.io/locating-elements.html#locating-elements-by-class-name