Python selenium自动化模拟登录操作(一)

Selenium Python 提供了一个简单的API 便于我们使用 Selenium WebDriver编写 功能/验收测试。 通过Selenium Python的API,你可以直观地使用所有的 Selenium WebDriver 功能 。Selenium Python提供了一个很方便的接口来驱动 Selenium WebDriver , 例如Firefox、Chrome、Ie,以及Remote,目前支持的python版本有2.7或3.2以上.


selenium 可以自动化测试、抢票、爬虫等工作。初次了解,现在模拟登录百度——即自动打开浏览器、自动输入账号密码并提交进行登录。


测试环境: 

python 3.5.0 

selenium 3.8.0 

chromedriver 2.33(chromedriver_win32.zip)

chrome浏览器  63.0.3239.84(正式版本) (64 位)


selenium 最新版安装:

pip install selenium

chromedriver 下载地址:

https://sites.google.com/a/chromium.org/chromedriver/downloads


在测试过程中,会遇到如下错误:

selenium.common.exceptions.WebDriverException: Message: Service xxxxxx unexpectedly exited. Status code was: 0


解决方法:将 chromedriver.exe 和 谷歌浏览器(Google Chrome)放到同一个目录


打开百度登录页面,确定各个输入文本框或按钮的id,如下图的用户名。同理找出密码及登录按钮的ID




测试脚本:

#-*- coding: utf-8 -*-
# python 3.5.0 + selenium 3.8.0 + chromedriver 2.33(chromedriver_win32.zip)

# https://sites.google.com/a/chromium.org/chromedriver/downloads
# chromedriver.exe 和 [Google Chrome] 放在同一文件夹

from selenium import webdriver

chromedriver = 'D:/Python35/selenium/webdriver/chromedriver.exe'
geturl = 'https://passport.baidu.com/v2/?login'
username = "用户名"
password = "密码"

browser = webdriver.Chrome(executable_path=chromedriver)
browser.get(geturl)

assert "登录百度帐号" in browser.title

browser.find_element_by_id("TANGRAM__PSP_3__userName").send_keys(username)
browser.find_element_by_id("TANGRAM__PSP_3__password").send_keys(password)

browser.find_element_by_id("TANGRAM__PSP_3__submit").click()

#browser.implicitly_wait(10)
#browser.quit()

若是登录几次失败后,则需要验证码了。下次再解决。


  • 6
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
Python Selenium是一个方便易用的自动化测试库,它是Selenium WebDriver的Python语言封装。通过Python Selenium,开发者可以使用Python编写自动化测试代码,实现对网页的自动化操作Python Selenium支持多种浏览器(如Chrome、Firefox、Edge等)和多个操作系统,可以模拟用户在浏览器中的各种行为,包括打开网页、查找元素、输入文本、点击链接、提交表单、上传文件等。为了使用Python Selenium进行自动化测试,需要进行准备工作,包括安装Python 3和selenium库,并导入所需的浏览器驱动。比如,通过以下代码可以启动Fiefox浏览器并访问百度网站: from selenium import webdriver browser = webdriver.Firefox("E:\jnpx\soft\chromedriver.exe") browser.get('http://www.baidu.com/') 在进行自动化测试时,可以使用WebDriverWait来等待页面元素的加载,例如: from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "kw"))) 以上就是关于Python Selenium自动化测试的简介和准备工作的说明。使用Python Selenium可以轻松实现网页自动化测试的需求。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Python_Selenium自动化测试详细教程](https://blog.csdn.net/qq_45664055/article/details/128343454)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [自动化测试——Python+Selenium](https://blog.csdn.net/itxib/article/details/119609839)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值