playwright 学习复仇记-2 Selector选择器定位元素

前言

Selector 选择器,也就是通常说的元素定位了,页面上点点点的操作,都是基于元素定位,所以这块是重点需要学的核心内容。

Selector 选择器

说到元素定位,大家肯定会首先想到 selenium 的八大元素定位,其中xpath 和 css才是最主要的。
playwright 可以通过 ​​​CSS selector​​​, ​​XPath selector​​​, ​​HTML 属性(比如 id, data-test-id​​​)或者是 ​​text 文本内容​​​定位元素。
除了xpath selector外,所有selector默认都是指向shadow DOM,如果要指向常规DOM,可使用*:light。不过通常不需要。

操作元素,可以先定位再操作

# coding=utf-8
from playwright.sync_api import sync_playwright


with sync_playwright() as p:
    # 创建服务器对象(指定浏览器驱动)
    # browser = p.chromium.launch()  # 不填写参数表示从计算机环境变量读取chromium驱动,启动无头模式(无界面版)
    browser = p.chromium.launch(headless=False,executable_path="C:\\Users\\19076\AppData\Local\Google\Chrome\Application\chrome.exe")
    # 创建一个窗口
    context = browser.new_context()
    # 在此窗口创建一个标签页
    page = context.new_page()
    page.goto("https://www.baidu.com/")
    #通过id识别元素
    page.locator("#kw").fill("百度热搜")
    page.locator("#su").click()
    page.wait_for_timeout(5000)
    # 一定不要忘记关闭对象
    page.close()
    context.close()

CSS 或 XPath 选择器(个人比较推荐xpath,动态元素除外)

# coding=utf-8
from playwright.sync_api import sync_playwright


with sync_playwright() as p:
    # 创建服务器对象(指定浏览器驱动)
    # browser = p.chromium.launch()  # 不填写参数表示从计算机环境变量读取chromium驱动,启动无头模式(无界面版)
    browser = p.chromium.launch(headless=False,e
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值