1、输入文字(fill)
适用于:<input>
,<textarea>
或[contenteditable],其他类型的会报错,page、element、frame都可以使用fill方法
from playwright.sync_api import sync_playwright with sync_playwright() as p: browser = p.chromium.launch(headless=False,slow_mo=1000) page = browser.new_page() page.goto("https://www.baidu.com") #页面直接调用fill方法 page.fill("#kw", "playwright") #向百度搜索框输入playwright #元素调用fill方法 element_handle = page.query_selector("#kw") element_handle.fill("playwright") #向百度搜索框输入playwright
2、模拟键盘挨个输入字符(type)
我们也可以在type方法中增加delay参数,设置每个字符之间输入的延迟。page、element、frame都可以使用type方法。不适用于ctrl、enter等特殊键
from playwright.sync_api import sync_playwright with sync_playwright() as p: browser = p.chromium.launch(headless=False,slow_mo=1000) page = browser.new_page() page.goto("https://www.baidu.com") page.type("#kw", "哈哈哈")
3、模拟键盘按键操作(press)
模拟键盘上的每个按键,也支持Control+c等组合按键,不支持连续按键(例如先按a、再按b)
Backquote, Minus, Equal, Backslash, Backspace, Tab, Delete, Escape,
ArrowDown, End, Enter, Home, Insert, PageDown, PageUp, ArrowRight,
ArrowUp, F1 - F12, Digit0 - Digit9, KeyA - KeyZ, etc.
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
browser = p.chromium.launch(headless=False,slow_mo=1000)
page = browser.new_page()
page.goto("https://www.baidu.com")
page.type("#kw", "enter")#模拟键盘挨个输入字符
page.press("#kw", "Control+a") #模拟ctrl+a键
page.press("#kw", "Control+x")
4、聚焦到某个元素(focus)
page.focus('元素')
5、鼠标点击(click)
page.click("元素")
selector参数:指定元素
button:右击、左击、中建 "left", "middle", "right",默认左
click_count:点击次数
6、鼠标双击(dbclick)
page.dbclick("元素")
7、鼠标悬浮(hover)
page.hover('#item')
8、操作复选框和单选框(check、uncheck)
适用于input[type=checkbox]
,input[type=radio]
,[role=checkbox]
或label
与复选框或单选按钮相关联
from playwright.sync_api import sync_playwright with sync_playwright() as p: browser = p.chromium.launch(headless=False,slow_mo=1000) context = browser.new_context() page = context.new_page() page.goto('https://passport.baidu.com/v2/?login') #进入百度的登录页面 with context.expect_page() as new_page_info: page.click("#TANGRAM__PSP_3__regLink")#点击我要注册 new_page = new_page_info.value new_page.check("#TANGRAM__PSP_4__isAgree") #选择同意协议
9、操作复选框和单选框(select_option)
适用于在<select>
元素中选择一个或多个选项
参考链接:https://playwright.dev/python/docs/input
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!