Python自动化神器Playwright使用
安装
```
pip install playwright
playwright install
```
用法
```
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
browser = p.chromium.launch()
page = browser.new_page()
page.goto("http://playwright.dev")
print(page.title())
browser.close()
```
注意事项
1.Response.body()用法
-返回带有响应正文的缓冲区
```
from playwright.sync_api import sync_playwright, Response
with sync_playwright() as p:
browser = p.chromium.launch()
page = browser.new_page()
response = page.goto(url)
response_decode = Response.body(response).decode(encoding="UTF-8")
```
注意:使用Response.body()需要import Response;
官方文档response.body()写法错误,r应该为大写,且需要一个参数
2.返回当前页面资源
```
response = page.reload(**kwargs)
```
3.获取元素边界值
```
box = page.locator("text=请按住滑块,拖动到最右边").bounding_box()
```
4.特殊按键
The Meta key. Allows issuing special command inputs. This is the Windows logo key, or the Command or ⌘ key on Mac keyboards.
5.调试
可以在语句中加入page.pause()来设置断点,可以在断点处人机交互解决问题,比如输入验证码。重新载入正常网页后,可以在playwright inspect中点击resume继续执行剩余代码。
6.滚动页面
```
page.evaluate("window.scrollBy(x, y)") #滚动偏移量
page.evaluate("window.scrollTo(x, y)") #滚动到指定坐标
```
参考1:https://github.com/microsoft/playwright-python/issues/902
参考2:https://developer.mozilla.org/zh-CN/docs/Web/API/Window/scrollBy
7.要在浏览器上下文中计算的JavaScript表达式
```
page.evaluate(表达式,**kwargs
```
浙公网安备 33010602011771号