问题标签 [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 - Playwright:获取所选元素的完整 XPATH
我想检索\\html\div\...
之前通过 egpage.waitForSelector()
或找到的元素的完整 XPATH () page.querySelector()
。
我将如何与剧作家一起做到这一点?我无法为此找到任何内置解决方案。
注意:我正在使用playwright-python
,但愿意为此实施 JS 解决方案——因为它会起作用。
模板(取自https://github.com/microsoft/playwright-python
示例代码):
编辑:
@hardkoded
建议将这个问题的答案(Get element's xpath in javascript)作为解决方案,但遗憾的是,提到的解决方案不适用于我的用例,因为我需要检索元素的整个 XPATH,并且诸如此类的快捷方式//*[@id="THE_ID"]
不适用于我。
python - 外部异步上下文管理器在内部异步生成器之前完成
给定以下最小示例:
我正在break
迭代异步生成器,我希望 finally 块在我的异步上下文管理器finally
块运行之前完成。在此示例"finalize gen"
中,将永远不会打印,因为程序在此之前退出。
请注意,我故意2
在生成器finally
块中选择了超时,以便上下文管理器finally
有机会在之前运行。如果我选择1
了两个超时,则将打印两条消息。
这是一种竞赛条件吗?我希望finally
在程序完成之前完成所有块。
如何防止上下文管理器块finally
在生成器块完成之前运行finally
?
对于上下文:
我使用剧作家来控制铬浏览器。外部上下文管理器提供它在finally
块中关闭的页面。
我正在使用 python 3.9.0
。
试试这个例子:https ://repl.it/@trixn86/AsyncGeneratorRaceCondition
exception - 如何在 Playwright-python 中处理 wait_for_selector 函数的 TimeoutError?
我想用它Except TimeoutError
来处理超时问题。但是脚本总是给我一个 TimeoutError,而不是按我的计划打印一条消息。
这是我的代码:
我的代码有什么问题吗?
python - 为在谷歌云应用引擎上运行的 python 运行 PlayWright
Hello PlayWright 有设置命令playwright install
,需要先运行才能使用。在运行我的 Django 应用程序之前,如何在 GCP 的应用程序引擎上设置安装脚本来运行此命令?
playwright - 编剧:如果http状态为500则停止
我希望剧作家早点失败,并在一个 http 请求不是200
或时停止302
。
不幸的是page.click()
返回无,所以我不知道如何检查点击的 http 状态。
如何在 Playwright 中实现“异常 http 状态失败”?
playwright-python - 在剧作家 python 中解决拖放问题
我正在尝试使用当前可用的鼠标操作实现拖放功能(我能够看到有一个未解决的问题),但到目前为止还不能做到这一点。所以我正在寻找解决方法,无论如何我们可以在剧作家python中实现拖放。下面是我尝试使用的代码。
谢谢
python - python playwright - 从文件添加cookie的问题
我有 cookies.json 文件,登录后我在其中存储了 cookie。我创建了使用该 cookie 打开页面的脚本,代码如下:
但我有这个错误:
此代码最初是在 js 中创建的,但是当我将其转换为 python 时,我遇到了这个问题,有什么帮助吗?
python - python playwright中的打印页面源
我有 PHP 脚本,我用这个带有 URL 参数的代码调用 python 函数:
但是,当我在访问页面后想打印页面源时,我收到
因为我尝试的代码不起作用:
有什么帮助吗?
python - Chrome - 在网络上自动打开 devtools 并保存日志
我正在使用剧作家进行测试自动化。每次测试运行都会创建一个新的铬实例。当我通过--auto-open-devtools-for-tabs
它时,它会按预期打开 devtools。但是,我需要更进一步并启用复选框 Perserve Log。测试很快,我需要在重定向之前查看请求。
python-3.x - 剧作家 python 无法使用 cookie 获取 api 页面
我在 python 中有两个脚本:
登录 >> 访问网站,使用登录表单登录并将 cookie 存储到 JSON 文件中以备后用
这个脚本运行良好。第二个脚本是从同一网站的其他页面的文件和打印页面源中获取存储的 cookie:
这个脚本也很好用。
但问题是这个网站有一些我想要提取的信息的 API,并且信息不能通过前端用户可见的页面源获得。因此,当我将 API 链接放在第二个链接中时,我收到了空的 JSON 页面。这些 API 请求使用令牌值,但由于我使用 cookie 来获取页面源,因此我没有令牌。我使用这些脚本是因为这是通过该网站拥有的 Cloudflare 保护的唯一方法。有什么方法可以让我使用 requests 模块和 playwright 模块的组合?或者对这种情况有帮助的任何其他建议,如何使用 cookie 获取 JSON 页面?
使用持久上下文更新代码:
1脚本:
2: