selenium的 元素定位、元素信息、交互
from selenium import webdriver
# 对应chromedriver.exe的位置
path = r'D:\Chrome\Application\chromedriver.exe'
# 创建浏览器操作对象
browser = webdriver.Chrome(path)
# 要访问的url
url = 'https://www.baidu.com'
# 发起访问
browser.get(url) # 元素定位 # 根据id来找到对象
# button = browser.find_element_by_id('su')
# print(button) # 根据标签属性的属性值来获取对象的
# button = browser.find_element_by_name('wd')
# print(button) # 根据xpath语句来获取对象
# button = browser.find_elements_by_xpath('//input[@id="su"]')
# print(button) # 根据标签的名字来获取对象,带s 返回是数组元素
# button = browser.find_elements_by_tag_name('input')
# print(button) # 使用的bs4的语法来获取对象
# button = browser.find_elements_by_css_selector('#su')
# print(button)
# 获取对应链接中的文本
# button = browser.find_element_by_link_text('直播')
# print(button)
from selenium import webdriver
# 启动路径
path = r'D:\Chrome\Application\chromedriver.exe'
browser = webdriver.Chrome(path) url = 'http://www.baidu.com'
browser.get(url)
# 借助id唯一,获取对应id的元素
input = browser.find_element_by_id('su') # 获取元素标签的属性
print(input.get_attribute('class')) # bg s_btn
# 获取标签的名字
print(input.tag_name) #input标签 # 获取元素文本
a = browser.find_element_by_link_text('新闻') #新闻
print(a.text)
from selenium import webdriver # 创建浏览器对象
path = r'D:\Chrome\Application\chromedriver.exe'
browser = webdriver.Chrome(path) # url
url = 'https://www.baidu.com'
browser.get(url) #引入时间模块
import time
# 睡眠2s
time.sleep(2) # 获取文本框的对象
input = browser.find_element_by_id('kw') # 1、在文本框中输入关键字周杰伦
input.send_keys('周杰伦') time.sleep(2) # 获取百度一下的按钮
button = browser.find_element_by_id('su') # 2、点击百度一下按钮
button.click() time.sleep(2) # 3、滑到底部
js_bottom = 'document.documentElement.scrollTop=100000'
# 执行js脚本
browser.execute_script(js_bottom) time.sleep(2) # 获取下一页的按钮
next = browser.find_element_by_xpath('//a[@class="n"]') # 4、点击下一页
next.click() time.sleep(2) # (第2页) # 5、回到上一页(第1页)
browser.back() time.sleep(2) # 6、回去 (第2页)
browser.forward() time.sleep(3) # 7、退出
browser.quit()

selenium的 元素定位、元素信息、交互的更多相关文章
- 每天一个JavaScript实例-操作元素定位元素
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- selenium的八大定位元素的方式
#八大定位方式 from selenium import webdriver def BrowserOpen(): driver = webdriver.Chrome(); driver.maximi ...
- selenium+iframe 如何定位元素(实战)
场景: 在同一界面,需定位iframe里面的元素, 就需要切换至Iframe块,然后定位元素,验证完成后,再切换出来. 如果不切换至iframe ,会发现不管采取什么定位,都会报元素不存在.
- selenium使用location定位元素坐标偏差
python+selenium+Chromedriver使用location定位元素坐标偏差使用xpath定位元素,用.location获取坐标值,截取网页截图的一部分出现偏差. 之所以会出现这个坐标 ...
- python + selenium 练习篇 - 定位元素的方法
1.利用ID定位元素(能直接通过ID来定位的元素比较少) # coding=utf-8from selenium import webdriverdriver = webdriver.Chrome() ...
- 【Selenium01篇】python+selenium实现Web自动化:搭建环境,Selenium原理,定位元素以及浏览器常规操作!
一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 二.话不多说,直接开干,开始搭建自动化测试环境 这里以前在 ...
- selenium八种定位元素方法
1.driver.find_element_by_id('su') 定位到元素的id一般id是唯一的,可以精确定位到元素 2.driver.find_element_by_name() 通过元素的na ...
- 『心善渊』Selenium3.0基础 — 4、Selenium基础元素定位详解
目录 1.什么是元素定位 2.Selenium元素定位常用API (1)By_id 定位 (2)by_name 定位 (3)by_class_name 定位 (4)by_tag_name 定位 (5) ...
- Appium学习路—Android定位元素与操作
一.常用识别元素的工具 uiautomator:Android SDK自带的一个工具,在tools目录下 monitor:Android SDK自带的一个工具,在tools目录下 Appium Ins ...
- Appium Android定位元素与操作
文章写得很好,转载备用 一.常用识别元素的工具 uiautomator:Android SDK自带的一个工具,在tools目录下 monitor:Android SDK自带的一个工具,在tools目录 ...
随机推荐
- 【C++ Primer Plus】编程练习答案——第11章 (待更新)
最近开学,事情较多,过两天更新...
- 2.1 附录--JVM指令手册
栈和局部变量操作 将常量压入栈的指令 aconst_null 将null对象引用压入栈 iconst_m1 将int类型常量-1压入栈 iconst_0 将int类型常量0压入栈 iconst_1 将 ...
- HDC 2021 | HMS Core 6.0:连接与通信论坛,为App打造全场景连接体验
如何在弱网环境下让用户享受无中断沉浸体验? 如何在全场景互联中让多设备交互如丝般顺滑? 如何在无网区域让移动终端发出紧急求助信息? 连接无处不在,连接与体验息息相关!流畅的网络体验已成为应用开发的关键 ...
- MyBatis概念和”安装“
MyBatis概念 MyBatis的前身就是iBatis,本是apache的一个开源项目,2010年这个项目由apahce sofeware foundation 迁移到了google code,并且 ...
- Java:AQS 小记-1(概述)
Java:AQS 小记-1(概述) 概述 全称是 Abstract Queued Synchronizer(抽象队列同步器),是阻塞式锁和相关的同步器工具的框架,这个类在 java.util.conc ...
- Beta阶段第八次会议
Beta阶段第八次会议 时间:2020.5.24 完成工作 姓名 工作 难度 完成度 ltx 1.修改一下小程序游客模式的风格 轻 80% xyq 1.针对昨天提出的意见对场地申请表格进行修改 中 9 ...
- (数据科学学习手札129)geopandas 0.10版本重要新特性一览
本文示例代码及文件已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 就在前不久,我们非常熟悉的Python地理 ...
- 使用jave2实现将wav格式的音频转换成mp3格式
最近需要用到语音合成功能,网上查阅了一番,发现可以使用腾讯云的语音合成API来完成这个功能,但是腾讯云的api返回的是wav格式的音频文件,这个格式的文件有些不通用,因此需要转换成mp3格式的文件. ...
- webpack基础以及webpack中babel的配置
webpack 安装 npm 初始化,控制台输入 npm init -y webpack 安装 npm i webpack webpack-cli -D 新建 webpack.config.js co ...
- 2021.7.28考试总结[NOIP模拟26]
罕见的又改完了. T1 神炎皇 吸取昨天三个出规律的教训,开场打完T2 20pts直接大力打表1h. 但怎么说呢,我不懂欧拉函数.(其实exgcd都忘了 于是只看出最大平方因子,不得不线性筛,爆拿60 ...