tot*_*ain 4 javascript google-chrome devtools console.log
我可以打开此 URL 的 Chrome DevTools 控制台: https: //www.google.com/并输入以下命令来打印“Hello world!” 到控制台:
console.log("Hello world!")
但是,当我尝试对此 URL 使用相同的命令时:https://svc.mt.gov/dor/property/prc我的消息不会打印在控制台中。这是为什么?
有什么办法可以强制控制台在这个 MT 网站上工作吗?
我尝试过使用 python/selenium 打开页面并使用execute_script() 来发出命令,但这也不起作用。
如果你这样做
console.dir(console.log)
Run Code Online (Sandbox Code Playgroud)
然后单击[[FunctionLocation]],您将在网站的源代码中看到以下内容:
"Debug" != e && (window.console.log = function() {}
)
Run Code Online (Sandbox Code Playgroud)
似乎是一种抑制生产日志记录的廉价(但懒惰?)方法。
解决这个问题的一种方法是使用许多其他控制台命令之一。(console.dir,或者console.error,如果你愿意的话)
如果您确实希望原始代码console.log再次工作,唯一的方法是在页面代码运行之前运行代码,以便您可以保存对该函数的引用。例如,使用用户脚本:
// <metadata block...>
// @grant none
// ==/UserScript==
const origConsoleLog = console.log;
// set original window.console.log back to its original
// after the page loads
setTimeout(() => {
window.console.log = origConsoleLog;
}, 2000);
// there are more elegant but more complicated approaches too
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
577 次 |
| 最近记录: |