Python自动化系列5

import selenium #工具里的所有的内容都导入

from selenium import webdriver #从selenium 工.具里导入webdriver库

import time #导入time这个模块--- Python自带的

#选择chrome这个浏览器,初始化driver==可以浏览器进行沟通建立会话= session

driver = webdriver.Chrome()

#1、打开一个网址

driver.get ( "http://120.78.128.25:8765")

#2、浏览器窗口最大化

driver.maximize_window ()

#3、打开新页面

#time.sleep(2)#等待,默认秒

driver.get ("http://erp.lemfix.com" )

#4、向前退后――刷新

#time.sleep (2)

driver.back () #退回上一个页面

#time .sleep (2)

driver.forward() #前进道下一个页面

#time .sleep(2)

driver.refresh () #刷新页面

#5、退出

driver.quit() #关闭驱动 sessionx闭

#driver.close() #关闭当前的窗口,不会退出会话

web自动化:

代码 翻译(中间人) 浏览器

Python----->浏览器驱动(准备)----->chrome

selenium:Python的工具,三个部分--了解

  1. ide:录制脚本--用的少
  2. webdriver:库--提供对网页的各种操作+结合语言使用-- Python java--重点
  3. grid:分布式--用的少

#以上浏览器的常规操作,非常规的操作--要怎么实现呢? ===元素定位 --了解前端页面

基础知识: web页面=HTML+CSS+Javascript --扩展 了解

html:标签语言<标签名>值</标签名>呈现页面内容

CSS:页面布局设置,字体颜色,字体大小样式

JS:依据不同效果

元素的特征:根据页面设计规则,有些特征是唯一=开发遵循了这个规则

id :类比身份证号 ==仅限于当前页面 username username

对页面进行对应的操作:

1、点击

2、传值

#找到了有username这个id的元素--点击

driver.find_element_by_id("username" ).click()

#找到了有username这个id的元素--点,输入内容

driver.find_element_by_id ("username" ).send_keys ("test123")

#找到了有password这个id的元素--点,输入内容

driver.find_element_by_id ("password" ).send_key=("123456")

元素定位

元素定位八大方法,最常用的有: id, name,xpath

如: username = driver.find_element_by_id('username')

找到元素后的操作:

√点击: click

√输入内容:send_keys

√获取文本: tetx

√获取属性: attribute

相关推荐
电子科技圈2 分钟前
IAR作为Qt Group独立BU携两项重磅汽车电子应用开发方案首秀北京车展
开发语言·人工智能·汽车·软件工程·软件构建·代码规范·设计规范
代码中介商3 分钟前
C语言指针深度解析:从数组指针到函数指针
c语言·开发语言
解救女汉子6 分钟前
mysql如何配置元数据锁超时_mysql lock_wait_timeout设置
jvm·数据库·python
Jasmine_llq18 分钟前
《B4356 [GESP202506 二级] 数三角形》
开发语言·c++·双重循环枚举算法·顺序输入输出算法·去重枚举算法·整除判断算法·计数统计算法
止语Lab27 分钟前
Go vs Java GC:同一场延迟战争的两条路
java·开发语言·golang
Rust研习社27 分钟前
Rust 多线程从入门到实战
开发语言·后端·rust
214396529 分钟前
SQL注入防御技术方案_基于正则表达式的输入清洗
jvm·数据库·python
2401_8323655236 分钟前
SQL窗口函数与递归查询的区别_如何根据场景选择
jvm·数据库·python
u01091476037 分钟前
c++如何处理文件路径中由于不规范的连续斜杠导致的路径解析错误【避坑】
jvm·数据库·python
2301_7965885039 分钟前
PHP源码开发用二手硬件划算吗_性价比与稳定性权衡【操作】
jvm·数据库·python