Selenium常用方法及函数、txt参数化
常用方法及函数:
1.表单的提交
方法:submit
解释:查找到表单(from)直接调用submit即可
实例:driver.find_element_by_id("form1").submit()
2.获取CSS的属性值
方法:value_of_css_property(css_name)
实例:driver.find_element_by_css_selector("input.btn").value_of_css_property("input.btn")
3.获取元素的属性值(一组元素中非常实用)
方法:get_attribute(element_name)
实例:driver.find_element_by_id("sellaiyuan").get_attribute("sellaiyuan")
4.判断元素是否被选中
方法:is_selected()
实例:driver.find_element_by_id("form1").is_selected()
5.返回元素的大小
方法:size
实例:driver.find_element_by_id("iptPassword").size
返回值:{'width': 250, 'height': 30}
6.判断元素是否显示(非常实用)
方法:is_displayed()
实例:driver.find_element_by_id("iptPassword").is_displayed()
7.判断元素是否被使用
方法:is_enabled()
实例:driver.find_element_by_id("iptPassword").is_enabled()
8.获取元素的文本值(非常实用)
方法:text
实例:driver.find_element_by_id("iptUsername").text
9.元素赋值
方法:send_keys(*values)
实例:driver.find_element_by_id("iptUsername").send_keys('admin')
10.删除浏览器所有的cookies
方法:delete_all_cookies()
实例:driver.delete_all_cookies()
11.删除指定的cookie
方法:delete_cookie(name)
实例:deriver.delete_cookie("my_cookie_name")
12.设置等待超时时间,可以在设置的时间内智能等待
方法:implicitly_wait(wait_time)
实例:driver.implicitly_wait(30)
13.查看浏览器的名字
方法:name
实例:drvier.name
14.打印title
方法:title
实例:deriver.title
txt参数化:
以百度为例
一、把需要的参数写在一个txt文档中进行遍历,示例如下:
#引入所需包
import time,codecs
from selenium.webdriver.common.by import By
from selenium import webdriver #把打开的文档内容进行utf-8编码
source = codecs.open("123.txt","r","utf-8")
value = source.readlines()
# print(list(value)) #遍历txt文档中的内容
for search in value:
driver = webdriver.Chrome()
url = "https://www.baidu.com/"
driver.get(url)
driver.find_element(By.ID,"kw").send_keys(search)
time.sleep(3)
driver.find_element(By.ID,"su").click()
driver.quit()
二、把需要的参数写在一个函数中,需要的时候进行调用,示例如下
函数部分
1 def fun(user="hanxiaobei",pswd=""):
2 print(u"调用函数成功")
3 return user,pswd
代码部分
from selenium.webdriver.common.by import By
from selenium import webdriver
import time
import k1
c2,c3=k1.fun()
# print(k2,k3) #打印是否调用成功 driver = webdriver.Chrome()
url = "https://www.baidu.com/"
driver.get(url)
driver.find_element(By.LINK_TEXT,"登录").click()
time.sleep(3)
driver.find_element(By.ID,"TANGRAM__PSP_10__userName").send_keys(c2)
driver.find_element(By.ID,"TANGRAM__PSP_10__password").send_keys(c3)
time.sleep(20) #由于需要输入验证码,我采用的手动输入,嘎嘎
driver.find_element(By.ID,"TANGRAM__PSP_10__submit").click()
time.sleep(5)
driver.quit()
三、把需要的参数写在字典中,需要的时候进行调用,示例如下
字典写成了一个函数,如下
1 def zidian():
2 data = {"han":"Hanxiaobei","user":123456,"hanxiaobei1":""}
3 return data
遍历字典代码部分,如下
from selenium.webdriver.common.by import By
from selenium import webdriver
import time
import k1
info=k1.zidian()
# print(info)
for username,passwd in info.items():
print(username)
print(passwd)
driver = webdriver.Chrome()
url = "https://www.baidu.com/"
driver.get(url)
driver.find_element(By.LINK_TEXT,"登录").click()
time.sleep(3)
driver.find_element(By.ID,"TANGRAM__PSP_10__userName").send_keys(username)
driver.find_element(By.ID,"TANGRAM__PSP_10__password").send_keys(passwd)
time.sleep(20)
driver.find_element(By.ID,"TANGRAM__PSP_10__submit").click()
time.sleep(5)
driver.quit()
Selenium常用方法及函数、txt参数化的更多相关文章
- Selenium常用方法及函数
新建实例driver = webdriver.Chrome() 1.获取当前页面Url的函数方法:current_url实例:driver.current_url 2.表单的提交方法:submit解释 ...
- Selenium之利用Excel实现参数化
Selenium之利用Excel实现参数化 说明:我是通过Workbook方式来读取excel文件的,这次以登陆界面为例 备注:使用Workbook读取excel文件,前提是excel需要2003版本 ...
- 笔记-爬虫-selenium常用方法
笔记-爬虫-selenium常用方法 1. 查找元素 常用的查找方法 find_element_by_name find_element_by_xpath find_element_by_l ...
- python接口自动化(三十四)-封装与调用--函数和参数化(详解)
简介 前面虽然实现了参数的关联,但是那种只是记流水账的完成功能,不便于维护,也没什么可读性,随着水平和技能的提升,再返回头去看前边写的代码,简直是惨不忍睹那样的代码是初级入门的代码水平都达不到.接下来 ...
- vbs操作txt文本文件常用方法(函数)
创建文件 dim fso, f set fso = server.CreateObject("Scripting.FileSystemObject") set f = fso.Cr ...
- Jmeter利用CSV Data Set Config 和 _CSVRead函数实现参数化
测试接口时,当请求参数不是固定的,每次请求对应的参数都是不同的,就需要对请求参数进行参数化.我们这里简单介绍一下5个用户与一个用户建立好友关系. 一.测试需求描述 1. 本次测试的接口为http服务端 ...
- 1.selenium实战之从txt文档读取配置信息并执行登录
前置条件: 1.本机已搭建ECShop3.0网站 2.在脚本目录创建了user.txt文本如下: 目的:实现从txt中读取配置文件信息,本实战中,包含url地址.用户名.密码,然后进行ESChop的登 ...
- Python+selenium常用方法(Webdriver API)
小编整理了目前学习的Python+selenium常用的一些方法函数,以后有新增再随时更新. 加载浏览器驱动: webdriver.Firefox() 打开页面:get() 关闭浏览器:quit() ...
- Selenium常用方法
Selenium是一个自动化测试工具,利用它可以驱动浏览器执行特定的动作,如点击.下拉等操作,同时还可以获取浏览器当前呈现的页面的源代码,做到可见即可爬.对于一些JavaScript动态渲染的页面来说 ...
随机推荐
- pthread_cond_wait的spurious wakeup问题
最近在温习pthread的时候,忽然发现以前对pthread_cond_wait的了解太肤浅了.昨晚在看<Programming With POSIX Threads>的时候,看到了pth ...
- Python random模块(获取随机数)
1.random.random 随机生成一个0到1的随机浮点数: 0 <= n < 1.0 In [2]: print random.random() 0.544824016934 2.r ...
- 使用Botkit和Rasa NLU构建智能聊天机器人
欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 我们每天都会听到关于有能力涉及旅游.社交.法律.支持.销售等领域的新型机器人推出的新闻.根据我最后一次查阅的数据,单单Facebook Me ...
- flask_route错误:AttributeError: 'function' object has no attribute 'route'
问题: 路由完全正确,当只有一个名为home的函数处理这个路由时候,下一个路由处理函数,总是提示没有这个rotue属性 Traceback (most recent call last): File ...
- openstack一键安装脚本(转载)
#!/bin/sh # openstack pike 单机 一键安装 # 环境 centos 7.4.1708 x86_64 # 更多内容 http://dwz.cn/openstack # Myde ...
- windows的MySQL安装
Window环境下: 1.下载MySQL MySQL社区版:https://dev.mysql.com/downloads/mysql/ MySQL商业版:https://www.mysql.com/ ...
- SQLServer2008修改sa密码的方法与SQL server 2008数据库的备份与还原
sa密码的修改转载自:http://blog.csdn.net/templar1000/article/details/20211191 SQL server 2008数据库的备份与还原转自 :htt ...
- 20_Python字典总结
字典: python内置了字典:dic全称dictionary.其他语言中成为map,使用key-value的存储,键-值.具有极快的查找速度类似与我们查字典,我们要查一个字1.从第一页往后翻,知道翻 ...
- mysql安装(CentOS 7.1 (64-bit system) MySQL 5.6.24)
环境:CentOS 7.1 (64-bit system) MySQL 5.6.24yum install libaio //安装依赖的包wget http://dev.mysql.com/get/m ...
- python socket单线程通信
注意 socket通信默认的情况下是属于阻塞形式通信,在recv与accept函数会进行阻塞 1.客户端正常退出的情况下,server端的con的通道会正常的关闭,recv直接赋值为空 2.在wind ...