问题标签 [playwright-python]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 使用 Python-playwright,如何在不将其保存到磁盘或使用临时文件的情况下制作屏幕截图?
我想使用 Python Playwright 制作屏幕截图并将该屏幕截图交给 REST API。我在这里找到了一个示例,该示例制作了屏幕截图并将其保存到文件中:
如何在不将其保存到磁盘或使用临时文件并将其传递给 REST 调用的情况下制作屏幕截图?
python - 在 Python 的 Playwright 中,我如何获取与 ElementHandle 相关的元素(孩子、父母、祖父母、兄弟姐妹)?
在 playwright-python 中,我知道我可以获得elementHandle
using querySelector()
.
示例(同步):
如何基于 this 获取与 this 相关的 an 元素elementHandle
?即父母,祖父母,兄弟姐妹,孩子处理?
python - 在 Python 的 Playwright 中,如何从框架 (iframe) 中检索元素的句柄?
我已经成功地在 python 中使用 Playwright 从页面中获取元素。我现在遇到了从嵌入iframe的文档中获取元素的挑战。例如,我使用w3schools 页面来解释<option>
element,它在 iframe 中显示结果。我正在尝试<option>
从 iframe 中检索此元素的句柄。
在页面上获取 an 元素的“正常”方式page.querySelector()
无法获取 an elementHandle
,这只是打印<class 'NoneType'>
:
我首先尝试显式获取 iframe 的句柄,但这会产生相同的结果(<class 'NoneType'>
):
如何从 iframe 中获取内容?
python - Python Playwright 同步与异步 API 有什么区别?
我已经开始学习playwright-python并且包playwright
有两个子模块async_api
和sync_api
. 但是,我找不到任何关于它们各自的优缺点的更深入的描述或讨论。根据他们的名字,我假设同步 API 调用是阻塞的,而异步调用在后台运行?
它们的功能是否不同,即是否存在sync_api
无法完成您可以使用async_api
(反之亦然)完成的事情的情况?
playwright-python - 如何使用 playwright-python 删除只读属性
我尝试使用以下代码使用 playwright-python 删除输入只读属性:
但我总是得到"passed function is not well-serializable!"
错误。有人可以帮助我吗?
playwright-python - 如何在使用 playwright-python 运行的代码结束时保持浏览器打开?
我想使用 playwright-python 自动填写一些表格。然后在提交前仔细检查填写。但它总是在代码运行结束时关闭浏览器。即使我使用了handleSIGHUP=False, handleSIGINT=False, handleSIGTERM=False
启动参数,并且没有在我的代码中使用任何page.close()
或browser.close()
,它仍然会在代码完成后关闭浏览器。
有谁知道该怎么做?
python - 如何使用 Playwright for Python 捕捉浏览器对话框(例如“下载或打开”)?
我试图在 Firefox 中使用 Playwright for Python 处理浏览器对话框(在这种情况下,但我猜浏览器无关紧要),即 Firefox 打开询问是否打开或保存文件的对话框。单击按钮后会弹出对话框。该文件的链接未公开,因此我无法以其他方式下载它。
我试着捕捉一个dialog
事件:
超时。然后我想我在这个 GitHub ticket中找到了解决方案。但是,以下内容也不起作用:
这些类型的对话框 - 与 JavaScript引发的对话框相比alert()
- 不会触发dialog
事件吗?从这篇文章的答案来看,我认为他们可能不会:Is it possible to catch browser's File Open/Save dialog event using Javascript。
如果是这样,我如何使用 python-playwright 接受或关闭这样的对话框?
python - 如何使用 Python 在 Azure Cloud 上运行 python playwright
我正在尝试部署从 web 中提取数据的计时器触发功能。我正在使用剧作家访问。我的代码在我的本地机器上按预期运行。但是,当我尝试在云上部署时,它说:
Result: Failure Exception: Exception: ================================================================================ "chromium" browser was not found. Please complete Playwright installation via running "python -m playwright install" ================================================================================ Stack: File "/azure-functions-host/workers/python/3.8/LINUX/X64/azure_functions_worker/dispatcher.py", line 353, in _handle__invocation_request call_result = await fi.func(**args) File "/home/site/wwwroot/AsyncFlight/__init__.py", line 21, in main browser = await p.chromium.launch() File "/home/site/wwwroot/.python_packages/lib/site-packages/playwright/async_api/_generated.py", line 9943, in launch raise e File "/home/site/wwwroot/.python_packages/lib/site-packages/playwright/async_api/_generated.py", line 9921, in launch await self._impl_obj.launch( File "/home/site/wwwroot/.python_packages/lib/site-packages/playwright/_impl/_browser_type.py", line 73, in launch raise not_installed_error(f'"{self.name}" browser was not found.')
我检查了我的消费计划,我的云上的操作系统是 Linux 并且"azureFunctions.scmDoBuildDuringDeployment"
设置为 true。我在 requirements.txt 中包含了剧作家。不知道我错过了什么。请帮忙!!
谢谢
automation - 无法启动 webkit 或与 playwright 截屏
但它适用于铬。
编剧:1.8.0 节点:14.15 Ubuntu:20.04
这是我的代码。
automation - 在 Playwright 中为请求使用另一个 URI 或路由
下面是我的代码。当应用程序提供服务并开始测试时,它使用我传入的 BASE_URL await page.goto(BASE_URL)。我想为我的所有请求使用另一条路线。