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

相关推荐
Hy行者勇哥44 分钟前
Python 与 VS Code 结合操作指南
开发语言·python
大力水手(Popeye)1 小时前
Pytorch——tensor
人工智能·pytorch·python
飞翔的佩奇5 小时前
【完整源码+数据集+部署教程】表盘指针检测系统源码和数据集:改进yolo11-CA-HSFPN
python·yolo·计算机视觉·数据集·yolo11·表盘指针检测
larance5 小时前
SQLAlchemy 的异步操作来批量保存对象列表
数据库·python
搏博6 小时前
基于Python3.10.6与jieba库的中文分词模型接口在Windows Server 2022上的实现与部署教程
windows·python·自然语言处理·flask·中文分词
麦兜*7 小时前
Swift + Xcode 开发环境搭建终极指南
开发语言·ios·swiftui·xcode·swift·苹果vision pro·swift5.6.3
lxmyzzs7 小时前
pyqt5无法显示opencv绘制文本和掩码信息
python·qt·opencv
专注API从业者7 小时前
Python + 淘宝 API 开发:自动化采集商品数据的完整流程
大数据·运维·前端·数据挖掘·自动化
萧鼎8 小时前
Python pyzmq 库详解:从入门到高性能分布式通信
开发语言·分布式·python
艾伦~耶格尔8 小时前
【集合框架LinkedList底层添加元素机制】
java·开发语言·学习·面试