gpt4 book ai didi

python - 有没有办法在 Playwright 中返回响应正文?

转载 作者:行者123 更新时间:2023-12-03 08:09:57 32 4
gpt4 key购买 nike

我正在与 Playwright 合作。我想从网络事件中获取响应正文(HTML),而不是等待 DOM 在浏览器中加载数据,然后解析元素。当前的工作流程看起来像这样:

  1. 剧作家开启 headless Chrome
  2. 使用验证码打开第一页(无数据)
  3. 解决验证码问题并重定向到包含数据的页面

有时会返回大量数据,并且页面需要相当长的时间才能在浏览器中加载,但所有数据都已在网络事件中从客户端收到。我的问题是可以在 Playwright 中获取网络事件,而不是等待所有元素加载。

我找到了Network Events文档,并且能够获取 HTML,但它返回所有请求而不是单个请求。

我使用 Playwright 只是为了导航、表单提交和获取网站 HTML。

最佳答案

只需使用一些条件而不是打印方法,例如您可以检查响应的 json 中是否包含某个键:

def run(playwright):
chromium = playwright.chromium
browser = chromium.launch()
page = browser.new_page()
# Subscribe to "request" and "response" events.
page.on("request", lambda request: print(">>", request.method, request.url))
page.on("response", lambda response: print("<<", response.status, response.url))
page.goto("https://example.com")
browser.close()

例如:

page.on("response", lambda response: response if key in response.body())

Python 也应该有 waitForResponse,你可以使用它。

关于python - 有没有办法在 Playwright 中返回响应正文?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71119462/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com