前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python+playwright 学习-41.locator.evaluate()对定位的元素执行JavaScript脚本

python+playwright 学习-41.locator.evaluate()对定位的元素执行JavaScript脚本

作者头像
上海-悠悠
发布2023-08-22 11:08:13
1990
发布2023-08-22 11:08:13
举报
文章被收录于专栏:从零开始学自动化测试

前言

page.evaluate() 是直接在页面对象上执行JavaScript脚本 locator.evaluate() 是对定位的元素执行JavaScript locator.evaluate_all() 对定位到的所有元素执行JavaScript

locator.evaluate() 对元素执行JavaScript

先用locator 方法定位到元素, 再对元素执行JavaScript

代码语言:javascript
复制
    # 上海悠悠 wx:283340479
# blog:https://www.cnblogs.com/yoyoketang/page = browser.new_page()
page.goto("http://127.0.0.1/login.html")username = page.locator('#username')
# 输入框输入内容
username.evaluate('node => node.value="yoyo"')
# 获取输入框内容
input_value = username.evaluate('node => node.value')
print(input_value)  # yoyo

locator.evaluate_all() 执行全部元素

在页面中执行 JavaScript 代码,将所有匹配的元素作为参数。

代码语言:javascript
复制
# 上海悠悠 wx:283340479
# blog:https://www.cnblogs.com/yoyoketang/from playwright.sync_api import sync_playwrightwith sync_playwright() as p:
browser = p.chromium.launch(
headless=False
)
page = browser.new_page()
page.goto("https://www.baidu.com/")links = page.locator('#s-top-left>a')
# 定位全部元素
res = links.evaluate_all('nodes => nodes.length')
print(res)  # 7

定位百度页面上的链接, 执行nodes.length 获取元素个数

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-05-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 从零开始学自动化测试 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • locator.evaluate() 对元素执行JavaScript
  • locator.evaluate_all() 执行全部元素
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档