从 Chrome 控制台使用 Tampermonkey API?

Posted

技术标签:

【中文标题】从 Chrome 控制台使用 Tampermonkey API?【英文标题】:Use the Tampermonkey API from the Chrome console? 【发布时间】:2012-12-13 02:28:26 【问题描述】:

有什么方法可以在 Chrome 的 javascript 控制台中使用 Tampermonkey's API 吗?

我想弄乱GM_xmlhttpRequest()GM_listValues() 之类的函数。

【问题讨论】:

【参考方案1】:

    创建以下脚本:

    // ==UserScript==
    // @name       Exports some GM functions
    // @namespace  Whatever
    // @match      *
    // ==/UserScript==
    // WARNING: Any page can now use these methods! Be careful,
    // or change "@match *" to "@match https://example.com" and
    // visit https://example.com to test the API.
    unsafeWindow.GM_xmlhttpRequest = GM_xmlhttpRequest;
    unsafeWindow.GM_listValues = GM_listValues;
    

    打开任何可以激活 Tampermonkey 的页面(例如 https://***.com/)。

    打开开发者工具 -> 控制台。 完成,您现在可以使用导出的方法(从第 1 步开始)做任何您想做的事情。

【讨论】:

我在上下文下拉框中没有 chrome-extension://dhd...。我只有 chrome-extension://gig... 我想的用户脚本。这些功能也不会出现在我的控制台的窗口对象中。 @Jake,确保 Tampermonkey 脚本在相关页面上运行,然后关闭该选项卡并在新页面中打开该页面。然后将出现 Tampermonkey 上下文。此外,只会显示您导出的函数。 @Jake 访问 chrome://extensions/ 以找出您正在寻找的扩展程序的 extensionID (Tampermonkey)。创建用户脚本后,您必须重新加载页面。如果控制台已打开,请关闭并重新打开控制台。这些步骤将始终有效。 您知道如何在最新版本中执行此操作吗?我找不到任何页面上下文选项!从<top frame> 更改为Tampermonkey 也不起作用 - 它显示GM_x is not defined @ṧнʊß 你可以使用unsafeWindow。显然 Tampermonkey 现在在页面的上下文中运行,而不是在扩展中运行

以上是关于从 Chrome 控制台使用 Tampermonkey API?的主要内容,如果未能解决你的问题,请参考以下文章

从终端打开 Chrome 并打开开发者控制台

无法使用 thymeleaf 从 mysql 数据库加载 chrome 中的数据,但在控制台中获取查询

使用 Javascript fetch 命令从 google chrome 控制台请求新闻 API 运行命令时出现问题

来自 chrome 控制台的聚合物属性

从控制台检查 chrome 版本

从 Chrome 扩展程序控制 YouTube 播放器