iframe定位、下拉框定位、获取cookie
iframe
就是一个页面里嵌套了另外一个页面
iframe标签也叫浮动框架标签,iframe标签也是一个比较特殊的框架,可以放在浏览器中的小窗口,可以出现在页面的任何一个位置上,但是整个页面并一定在框架页面上,iframe框架完全是由开发者去定义高度和宽度,在网页中嵌套另外一个网页。
<iframe src="源文件" width="浮动宽" height="浮动高">
……
</iframe>
这种情况如何去定位?
在外面能看到但是定位不到,要先切入到iframe里,然后再iframe里面去定位
只是查找范围上的变化
切入iframe后正常定位即可
# 在iframe里定位元素
from selenium import webdriver
from time import sleep
driver = webdriver.Chrome()
driver.get("http://shop.pro.17lebo.com/")
sleep(1)# 点击个人中心 (未登录提示先登录,这个是弹出的登录框而不是在当前页面点击登录)
driver.find_element("xpath", "//span[text()='个人中心']").click()
# 切换到iframe
# 先找到iframe的链接 "http://shop.pro.17lebo.com/?s=user/modallogininfo.html",然后再切换
driver.switch_to.frame(driver.find_element("xpath", "//iframe[contains(@src,'modallogininfo')]"))
# 切换到iframe再定位 就能找到了
sleep(1)
# 定位到并输入用户名和密码
driver.find_element("name", "accounts").send_keys("lebo19_001")
driver.find_element("name", "pwd").send_keys("lebo19.001")
# 定位到并点击登录
driver.find_element("xpath", "//button[text()='登录']").click()
sleep(5)# 退出浏览器卸载最后
driver.quit()
既然能切到iframe,那就要能切回去
driver.switch_to.parent_frame()
下拉框
一般与地址相关的都是下拉框
省份地市的下拉框是原来就在那的,只是不可见,而不是点击之后弹出来的。
那下拉框要怎么定位?
from selenium.webdriver.support.select import Select# 进入我的地址
driver.get("http://shop.pro.17lebo.com/?s=useraddress/index.html")
# 点击新增地址
driver.find_element("xpath", "//button[@data-popup-title='新增地址']").click()
sleep(5)
# 新增地址的页面也是一个iframe,所以要切换到iframe
driver.switch_to.frame(driver.find_element("xpath", "//iframe[contains(@src,'s=useraddress/saveinfo.html')]"))
# 省份地市的下拉框是原来就在那的,只是不可见,而不是点击之后弹出来的。所以要设置显示属性为可见状态
# 修改显示属性
js = "document.querySelectorAll('select')[0].style.display='block';"
driver.execute_script(js)
province = driver.find_element("name", "province")
# 选择下拉框中的省份
Select(province).select_by_index(4)
sleep(2)
js = "document.querySelectorAll('select')[1].style.display='block';"
driver.execute_script(js)
city = driver.find_element("name", "city")
# Select(city).select_by_index(1)
Select(city).select_by_visible_text("太原市")
sleep(2)
js = "document.querySelectorAll('select')[2].style.display='block';"
driver.execute_script(js)
county = driver.find_element("name", "county")
# Select(county).select_by_index(4)
Select(county).select_by_visible_text("小店区")
sleep(2)
cookie
# 获取所有cookie
print(f"获取cookie的值:{driver.get_cookies()}")
# 获取个别cookie
print(f"获取cookie的值:{driver.get_cookie('domain')}")# 添加cookie
driver.add_cookie({"name": "乐博学院", "value": "五年"})
# print(f"添加之后获取cookie的值:{driver.get_cookies()}")# 删除所有cookie
driver.delete_all_cookies()
# 按名字删cookie
driver.delete_cookie("name")
iframe定位、下拉框定位、获取cookie相关推荐
- js下拉 selenium_selenium 难定位元素,时间插件,下拉框定位,string
1.元素定位 ID定位元素: findElement(By.id("")); 通过元素的名称定位元素: findElement(By.name("")); 通过 ...
- 下拉框怎么获取label_拼多多-「关键词自然流量快速获取」访客暴涨秘诀
大家好,欢迎来到多多说电商. 这节内容我们就说说自然流量中关键词流量如何能够有效获取. 话不多说,我们直接进入主题: 我们首先明白客户的消费逻辑,不难理解,分为以下几类: 1:准确性关键词查找消费 2 ...
- 下拉框如何获取到value跟code
遍历后端传来的 units 数组,[{value: ''区域一',code: '1'},{value: '区域二',code: '2'}] <el-form-item label="活 ...
- select下拉框动态获取数据
需求:select下拉框中的数据是从后台接口中获取的,而不是自己写的假数据 步骤:(这里是用jquery及ajax发送请求) 一.页面上导入jquery在线资源 二.代码实列如下(仅供参考) < ...
- layui下拉框怎么获取自定义值_layui如何得到select下拉框选中的值?
layui如何得到select下拉框选中的值?下面本篇文章介绍一下layui取得select下拉框选中值的方法.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. layui如何得到se ...
- Select下拉框json获取国家区号
应客户需求,填写电话区号时,要求下拉选择国家来获取该国家的电话区号. 代码如下: 国家区码: country.json [{"cnname": "中国大陆",& ...
- antd-select下拉框同时获取所选值id和名字属性
1.预期实现 需要得到id和name的值 然后传入接口 2.给当前的选择框绑定回调事件 一般我们需要获取一个值得时候是这样写 changeGoodsName = (value) => {this ...
- layui下拉框怎么获取自定义值_layui select获取自定义属性方法
在layui里面给了特定几个自定义属性title 请选择属性 雪碧 芬达 冰糖雪梨 金贝 监听select form.on('select(sadaS)', function(data){ conso ...
- android下拉框 Spinner 获取选中,设置选中
设置默认选中: public static int ugid = 1; public void setSpinnerItemSelectedByValue(Spinner spinner,String ...
最新文章
- IntelliJ IDEA 2018.1正式发布!什么?还能这么玩?
- 关于[入行几年后,你的未来应该在哪里]的思考
- boost::type_erasure::less_than_comparable相关的测试程序
- javaweb学习总结(十八):JSP属性范围
- 前端学习(361):svn操作后续
- Google | 突破瓶颈,打造更强大的Transformer
- python 图例颜色_python – 来自颜色字典的matplotlib.pyplot scatterplot图例
- 考研重庆邮电大学计算机跨专业,重庆邮电大学计算机考研难度
- 从苹果换回安卓是什么体验?
- 综合评价与决策方法02——模糊综合评判法
- 2018年阿里巴巴前端开源项目汇总
- 网络性能测试(系统层面、针对Linux、安卓)
- 什么是计算机网络AP,AP与AC的区别是什么,拓扑网络知识。
- 【python多版本共存】
- 详解APP应用分发平台的榜单推荐和搜索排名规则
- 杭电1069 Monkey and Banana
- 漏洞复现Influxdb,H2database,couchDB,ElasticSearch
- java利用pol导出excel
- 淘宝搜索技术代码你知多少
- 解决NativeCat能连接的上,但是IDEA连接不上
热门文章
- RESTful接口架构是什么
- 用EXCLE制作抽奖客户名单操作步骤
- QDateEdit日历修改之QCalendarWidget 样式设置
- .NET MAUI 安卓 UI 资源设置
- 智能多媒体内容设计在阿里巴巴的应用
- 深入浅出ModbusTcp
- 易语言 post请求 解析json 初学者记录 多多进宝
- 基于 Kintex UltraScale 系列 FPGA 的高性能 PXIE 数据预处理载板(KU060 +FMC子卡接口)
- 分享63个JS幻灯片代码,总有一款适合您
- linux电脑外放没声音,你好,就是想问一下我的笔记本电脑为什么插上耳机没有声音,外放有声音,声卡驱动我也重新装了,还是不行!...