python自动化测试之web运行代码报错:selenium.common.exceptions.NoSuchElementException: Message: no such element

python自动化测试,运行代码报错如下:
python自动化测试之web运行代码报错:selenium.common.exceptions.NoSuchElementException: Message: no such element_第1张图片
代码如下:

driver = webdriver.Chrome()

url="https://qzone.qq.com/"
driver.get(url)

account_click='//a[contains(text(),"帐号密码登录")]'
driver.find_element_by_xpath(account_click).click()

报错:

selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//a[contains(text(),"帐号密码登录")]"}
  (Session info: chrome=77.0.3865.90)

原因:有iframe,是嵌入的页面
python自动化测试之web运行代码报错:selenium.common.exceptions.NoSuchElementException: Message: no such element_第2张图片解决方案:

from selenium import webdriver
import time

"""
环境安装:
1.安装python
2.安装selenium,cmd输入:pip install selenium

"""

# 第一步:打开浏览器
driver = webdriver.Chrome()

# 第二步:访问QQ空间登录页面  https://qzone.qq.com/
url="https://qzone.qq.com/"
driver.get(url)

# 第三步:点击账号,密码登录
# 1.点击切换iframe
# 2.定位iframe
# 3.点击账号密码登录
driver.switch_to.frame("login_frame")
account_click='//a[contains(text(),"帐号密码登录")]'
driver.find_element_by_xpath(account_click).click()

# 第四步:输入账号密码
# 1.定位账号输入框,输入账号
user='//input[@id="u"]'
pwd='//input[@id="p"]'

driver.find_element_by_xpath(user).send_keys("15xxxxxx8")
driver.find_element_by_xpath(pwd).send_keys("test")

你可能感兴趣的:(python自动化测试)