q546624527 发表于 2022-11-26 17:03

playwright如何判断网页元素是否存在?

想用playwright判断验证码是否输入正确,只有点击登录后才知道。登录成功进入新页面,如果登录失败,则会显示验证码错误。
不知道如何判断网页元素是否存在?查了官方文档,没看懂,网上也搜索了很多,搜不到..

luxiaole 发表于 2022-11-26 17:14

判断网页元素的length是不是等于0,如果等于0就说明元素未加载

q546624527 发表于 2022-11-26 17:36

luxiaole 发表于 2022-11-26 17:14
判断网页元素的length是不是等于0,如果等于0就说明元素未加载

定位不到,好像会报错

cloud2010 发表于 2022-11-26 20:46


page.wait_for_selector()是不是干这亇的?

vista_info 发表于 2022-11-26 21:10

之前写过用selenium的 参考https://zhuanlan.zhihu.com/p/365909540

少轻丶狂 发表于 2022-11-26 21:49

这样
let button = page.locator('//*[@id="root"]/section/section/div/section/section//button/span');
if(await button.count() >0){
    //这里存在N个元素
}

慕星月 发表于 2022-11-27 02:07

page.is_visible('#ChDivSummaryMore')

q546624527 发表于 2022-11-27 19:11

kai-memory 发表于 2022-11-26 21:10
之前写过用selenium的 参考https://zhuanlan.zhihu.com/p/365909540

之前用过selenium。还是有区别

q546624527 发表于 2022-11-27 19:12

慕星月 发表于 2022-11-27 02:07
page.is_visible('#ChDivSummaryMore')

这个是元素是否可见,和是否存在还是有区别。
有可能元素是存在的,只是属性是不显示而已。
页: [1]
查看完整版本: playwright如何判断网页元素是否存在?