'无法使用xpath找到元素' Python中的错误

时间:2018-02-06 02:38:45

标签: python selenium xpath

所以我尝试使用phantomJS登录我的Instagram帐户。 但是我在第四行收到错误(" dom ...")

warnings.warn('对PhantomJS的Selenium支持已被弃用,请使用无头' 回溯(最近一次调用最后一次):

并且回溯调用以selenium.common.exceptions.InvalidSelectorException结束:消息: errorMessage":"无法找到带有xpath表达式的元素

此错误的原因是什么?

from selenium import webdriver
driver = webdriver.PhantomJS()
driver.get('https://www.instagram.com/accounts/login/')
dom = driver.find_element_by_xpath('//')
import pdb
pdb.set_trace()
username = dom.find_element_by_name('username')
password = dom.find_element_by_name('password')
login_button = dom.find_element_by_xpath('//[@class="_qv64e _gexxb _4tgw8 _njrw0"]')
username.clear()
password.clear()
username.send_keys('your username')
password.send_keys('your password')
login_button.click()
driver.get('https://www.instagram.com/accounts/login')
if 'logged-in' in driver.page_source:
  print 'Logged in'

1 个答案:

答案 0 :(得分:0)

通过xpath选择html文档中所有元素的正确方法是//*登录按钮的正确,完整,xpath是//*[@id="react-root"]/section/main/article/div[2]/div[1]/div/form/span[1]/button