gpt4 book ai didi

google-chrome - 自动记录网络选项卡,无需在 Google Chrome 中打开它

转载 作者:行者123 更新时间:2023-12-02 20:52:29 24 4
gpt4 key购买 nike

我需要将网络选项卡中显示的信息记录到一个文件中。我可以通过先触发网络选项卡然后将其导出到文件来实现。但是是否可以在打开 Chrome 时自动运行网络选项卡并将其导出到后台文件?

可以吗?

最佳答案

这取决于您的要求。如果您的扩展涉及 DevTools,因此它是开放的,您可以使用 chrome.devtools.network.getHAR()获取网络流量的方法。您无需导航到“网络”选项卡。

但是,如果你想在不打开 DevTools 的情况下访问网络数据,则此 API 将不起作用,因为它只公开给 DevTools 实例。有几个可能的选择。

选项 1

您可以使用 chrome.webRequest用于拦截每个请求/响应并将您想要/可以添加到对象的任何数据的 API。然后你可以使用 chrome.downloads用于下载数据的 API。在您的情况下,您可以使用数据 URI。

var url = 'data:application/json;base64,' + btoa(data);
chrome.downloads.download({url: url, filename: 'notQuiteAHAR'json'});

我还没有在实践中对此进行测试,我不太确定您是否可以在调用下载之前确定所有请求何时完成。

选项 2

使用更低的级别chrome.debugger API,根据@wOxxOm 的评论。调试协议(protocol)一次只允许调试器的一个实例,所以这只有在你没有运行 DevTools 时才会起作用。 API 公开的内容远不止 chrome.webRequest API,但需要一些工作才能获取您需要的所有数据。

有一个名为 chrome-har-capturer 的存储库,它使用调试协议(protocol)。特别感兴趣的是 har.js ,它使用在调试器 API 中找到的事件来手动构建 HAR。该库的目的是用于远程调试目的,但我相信您可以在扩展中使用调试器 API,因此您可能会使用此存储库的各个方面。

关于google-chrome - 自动记录网络选项卡,无需在 Google Chrome 中打开它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41779817/

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