在 Google Chrome 开发者工具的网络标签中捕获下载
Posted
技术标签:
【中文标题】在 Google Chrome 开发者工具的网络标签中捕获下载【英文标题】:Capture Downloads in the Network Tab of Google Chrome Developer Tools 【发布时间】:2018-08-01 22:39:05 【问题描述】:Google Chrome 开发者工具窗口中的网络标签显示了几乎所有的 http 请求,但是当 http 请求导致文件被下载时似乎没有捕获任何内容。
如何在 Google Chrome 中捕获下载请求?
【问题讨论】:
我认为这可能与Chrome help forum 和Chrome bugs 有关,但这建议关闭chrome 标志--enable-browser-side-navigation
。我找不到那面旗帜。 --navigation-mojo-response
标志听起来很相似,但对我没有影响。
如果你只使用 WireShark 会怎样? Chrome 开发者工具还可以,但对于这类事情,专业的嗅探器会为您提供很大帮助。
您可以在 chrome 中捕获下载的文档,例如,如果您从谷歌驱动器下载,它将显示为 200 状态,类型为文档。您可以将连接速度限制为 3G 以查看它的运行情况。
【参考方案1】:
我确定您的文件正在通过打开一个新窗口进行下载。开发者工具的 Network tab 只捕获当前 tab 的请求。
例如,以下链接将下载文件,但不会出现在网络选项卡中。
<a href="/yourfile.doc" target="_blank">Click Here to Download file</a>
类似的事情可以通过javascript使用(window.open,动态超链接/iframe)来完成,它不会出现在网络标签中。
您可以查看各种 Javascript 方法here
我过去曾观察到类似的行为。
您可以检查旧版 chrome 中的 chrome://net-internals
和新版 chrome 中的 chrome://net-export/
以监控任何类型的 chrome 实例/选项卡发出的请求。
注意:您可以在chrome的url框中输入chrome://net-export/
查看chrome的内部事件。
【讨论】:
【参考方案2】:我也遇到过类似的问题,下面是我的解决方法。
问题:
调试点击后下载文件的锚链接。
调试过程:
步骤
-
转到
chrome://settings/content/automaticDownloads?search=download
并禁用auto download
打开chrome开发工具,设置->全局->Auto-open DevTools for popup
打开chrome开发工具,设置->控制台->Preserve log upon navigation
希望对你有帮助。
【讨论】:
在 2021 年这没有任何作用【参考方案3】:您可以使用 Fiddler 更细致地查看您的网络流量:
https://www.telerik.com/fiddler
*我不为提琴手工作
【讨论】:
这不会直接回答问题,但可以很好地作为一个侧面解决方案。在浏览器和服务器之间插入透明代理可以很好地捕获地址,甚至可以存储从服务器传输的数据的副本,从而有效地下载网站。【参考方案4】:这无需为单个下载请求更改 Chrome 的任何设置即可工作。但是,它不会自动显示在不同选项卡或窗口中触发的所有下载请求。
-
在 GUI 中触发下载。
打开 Chrome 的下载历史记录 (
chrome://downloads/
)。
右键单击您的下载并Copy link address
。
打开 DevTools,将链接粘贴到相应 Chrome 选项卡的地址栏中并执行。
下载请求显示在 DevTools 中。
【讨论】:
【参考方案5】:捕获是什么意思? 如果您的意思是预览选项卡或响应选项卡中没有显示任何内容,那是因为响应是正在下载的实际文件。 我最近尝试在网络选项卡中打开开发工具下载 Oracle JDK 11,这就是我得到的:
我在这个版本的 Chrome 中没有特别的配置(Versione 71.0.3578.98 (Build ufficiale) (a 64 bit))
正如@jlvaquero 所说,如果您想尽可能多地获取详细信息,请在您自己的本地电脑上尝试 WireShark。
【讨论】:
【参考方案6】:我可以通过从谷歌驱动器下载文档并将下载速度限制为 3G 来查看它。
【讨论】:
【参考方案7】:Google Chrome 已更新,支持在“网络”选项卡中下载
这个问题是在 2018 年 2 月提出的,当时 Google Chrome 不支持“网络”标签中的下载。
我已通过下载 Google Chrome 的 64.0.3282.140
版本验证了这一点。
然后尝试下载Spotify为例,发现网络标签中没有出现任何事件。
2019 年或之后发布的任何 Google Chrome 版本都会在“网络”标签中捕获所有下载请求。
【讨论】:
我没有看到这个。我刚刚使用刚刚更新的 Chrome/MacOS(v. 73.0.3683.103)进行了下载,在“下载托盘”中生成进度指示器的下载没有任何相应的网络请求(或 URL 或时间) 在开发网络选项卡中。 我也没有看到这个。 Acidic9 ,你能仔细检查一下吗? 我也不可用。我在 80.0.3987.106 刚下载了一个新的 Chrome,当我下载一些 csv 时它没有显示任何请求【参考方案8】:第一步:用f12
程序员工具栏打开。
第二步: 转到网络选项卡并找到有问题的视频。通过点击媒体来帮助过滤。
第三步:如果视频没有保护,您可以右键单击,在新标签页上单击打开并使用crtl + s
下载。如果这不起作用是因为视频有参数阻止它这样做。在这种情况下,再次右键单击,转到 COPY 会话,然后单击 copy as cURL
。
第四步: 转到您的 linux 终端(如果您使用 windows 转身),如果您没有安装 curl,请键入 sudo apt install curl
,然后粘贴复制的 CURL 命令开发者栏。
第 5 步: 在执行命令之前,您需要在其末尾添加 --output video.mp4 --insecure
,因为它是二进制文件。 insecure 参数是您是否有证书问题。等待下载完成并快乐!
Obs:此链接可以帮助您:https://www.hanselman.com/blog/HowToDownloadEmbeddedVideosWithF12ToolsInYourBrowser.aspx
【讨论】:
以上是关于在 Google Chrome 开发者工具的网络标签中捕获下载的主要内容,如果未能解决你的问题,请参考以下文章
未进行 API 调用,因为它未反映在 Google chrome 开发人员工具的网络选项卡中
login.do提交时如何使表单密码数据隐藏在Chrome开发者工具网络面板中?
带有 Android 和 Windows 10 的 Google Chrome 开发工具出现空白页