selenium-语法

bing网站搜索关键词-selenium基础脚本实例
# bing网站搜索关键词-selenium基础脚本实例

# 导入类库
from selenium import  webdriver
# 打开谷歌浏览器
driver=webdriver.Chrome()
# 访问url
driver.get('https://cn.bing.com/')
# 定位输入框,搜索关键词
driver.find_element_by_id("sb_form_q").send_keys('男')
# 点击搜索按钮
driver.find_element_by_id("search_icon").click()
# 关闭浏览器
driver.close()

前台购物流程

会用到的语法

1.窗口最大化 driver.maxmize_window()

2.导包的快捷键:alt+enter

3.元素定位方法(7种)

优先顺序:id-name-classname-linktest

id

name

class

linktest:<a>可以是linktest标签

xpath: 比较万能的方法是xpath,前面四种方法不好使,再使用第五种xpath

css selector:        

1可以通过多个属性来定位,不需要分辨哪个class是唯一的,在两个class定位值,分别加一个.

driver.find_element_by_css_selector(".shopCar_btn_03.fl").click()

2通过css_selector可以用任意的属性来定位元素,只需要在属性的两边加上一对中括号即可

driver.find_element_by_css_selector('[value="2"]').click()

partial_link_test(''):尝试使用部分的链接文本;如果链接文本被按钮图标截断了,可以使用部分的链接文本

driver.find_element_by_partial_link_text("人资").click()

4.让程序休息3秒钟

#导入库
import time
time.sleep()

5.窗口切换

找到新窗口的名字

new_window=driver.window_handles[-1]

切换到新窗口

driver.switch_to.window(new_window)

6.强制转换成下拉框类型(a是指定位到的元素位置

Select (a).select_by_visible_text("杭州")

后台添加商品

1.查看万能验证码

查看有万能验证码的url,找到对应路径的脚本文件,注释掉相关校验的代码,ui测试可用玩你呢过验证码,在代码里面查找,或者问相关后端开发人员

2.双击按钮,ActionChains封装,以.perform()结尾

ActionChains(driver).double_click(driver.find_element_by_id("7")).perform()

3.处理弹出框

浏览器最大等待30s,每隔0.5秒去判断有没有满足执行条件

from selenium.webdriver.support import expected_conditions
from selenium.webdriver.support.select import Select
WebDriverWait(driver,30,0.5).until(expected_conditions.alert_is_present())

4.浏览器切换到弹出框上,并点击确定按钮

driver.switch_to.alert.accept()

个人中心设置

1.submit方法:类似click,只能用于form表单中

# submit方法:类似click,只能用于form表单中
# 这里submit方法就代替了,定位登录按钮并点击的操作
driver.find_element_by_id("password").submit()

2.在日历输入框中输入‘年月日’,删除只读属性(为了不用一步一步去点击)

selenium做不到,但是javascript可以做到

javascript是一门单独的语言、java、python、没有任何关系,几乎所有的网页都离不开javascript语言

javascript语言可以直接写在浏览器的空间里面,学会了selenium,就相当于学会了所有的自动化测试,因为所有的自动化测试几乎跟selenium是相似的

删掉readonly属性,把javsscript语句当做是一个字符串,document相当于整个页面的的html文档

日历空间本身是一个输入框

获取一个日历控件:getElementByid('date')

删除属性:removeAttribute('readonly')

想要把javascript写成python,需要把javascript语句当成一个字符串来处理

script=‘document.getElementByid('date').removeAttribute("readonly")

通过浏览器执行

driver.excute_script(script)

f12的source里面会保存很多js的文件

可以在控制台写javascript代码

javascript的思路基本跟selenium的思路一样

3.切换到弹出框上,去获取弹出框上的信息

update_message = driver.switch_to.alert.text
print(update_status)

4.智能等待

放在谷歌浏览器的驱动下面

driver.implicitly_wait(10)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值