如何修改来自Chrome网上应用商店的扩展?

76
我在Chrome Web商店看到了这个扩展程序,它可以显示YouTube频道的最新视频。我想修改这个扩展程序以使其与另一个频道配合使用。
我该如何做到这一点?

1
编辑 config.js 文件,将 "channel":"..." 设置为您想要的任何值。虽然未经测试,但这对我来说是有意义的。顺便提一句,这个问题可能不适合在 Stack Overflow 上发布,因为它除了您之外很少会帮到其他人。请阅读 [faq] 以了解您可以提出哪些问题。 - Rob W
2
我被建议在这里提问。我不明白这如何仅对我有所帮助。 - Alex_dlc
通过你对我的评论的回复,我推断你对Chrome扩展没有任何了解,对吗?因为答案太长,不适合在评论中回复,我会在下面发布答案。同时,我会将你的问题更加通用化,以便让其他人也能受益。 - Rob W
@user2407370 SO是一个很好的问答平台,可以询问“如何查看Chrome扩展中的文件”或“在YouTube URL中频道在哪里”,但您应该首先告诉我们您已经尝试过什么来解决问题,并且不应该要求我们完全解决问题。 - mikemaccana
1个回答

156

你有两个选择:

  1. 联系扩展程序的开发者,请求帮助。
  2. 编辑源代码。

我将以简单易懂的方式解释如何修改扩展程序并安装它。

获取源代码并修改

  1. 安装Chrome扩展程序源代码查看器
  2. 前往要修改的扩展程序在Chrome Web Store中的页面。
  3. 点击右键菜单中的黄色CRX按钮,并选择下载(截图)。

除了上述方法,您还可以使用在线crxviewer下载zip文件。

  1. 解压缩zip文件。
  2. 删除_metadata文件夹。
  3. 阅读源代码,并更改需要更改的内容(在您的特定情况下,我很快确定您想要更改编辑config.js并更改"channel"属性)。保存更改。

使用修改后的扩展程序版本。

  1. 访问Chrome扩展程序页面(chrome://extensions/)。
  2. 通过激活右上角的开关启用开发人员模式。
  3. 单击“加载已解压的扩展程序”按钮。
  4. 选择您的扩展程序文件夹(要知道哪个文件夹是正确的,请检查文件夹是否包含名为manifest.json的文件)。
  5. 确认。完成了。

除非您在这些步骤中犯了错误(包括修改源代码),否则修改后的扩展程序应该按预期工作。

伦理

修改他人的扩展以供个人使用并不是什么大问题。但是,请不要在没有原开发者同意的情况下分发此扩展。原作者花费了很多心血来创建这个扩展,甚至可能在上面留有他/她的联系方式。如果您分发(修改后的)扩展的副本,原作者将无法再更新扩展,因此他/她无法解决错误。
更糟糕的是,如果您把扩展变得糟糕,用户会向原作者投诉,因为他们的联系方式在上面。


1
非常好用,我在加载未打包的扩展时遇到了一点问题,不得不使用这个解决方案:https://dev59.com/tWAg5IYBdhLWcg3wLIPS#29848882 - Mo Beigi
1
以上解决方案并不理想,它会破坏本地环境。我最终使用了这种方法来修改扩展名:https://dev59.com/yV4d5IYBdhLWcg3wLf_P#27081397完美地解决了问题! - Mo Beigi
总结一下@Mohammad的链接,如果在加载扩展程序时出现无法读取文件夹_metadata的错误,因为它以下划线开头,解决方法就是删除_metadata文件夹并重试。您不需要对_locales文件夹进行任何操作。 - Rory O'Kane
3
文件名不是为了人类可读而设计的,它旨在避免资源冲突和依赖管理。这就是所谓的“逆向工程”。它并不容易,也不适合胆怯的人。这并不是_想要_去做的...但这也是最有价值的学习方式之一的原因所在。 - Metagrapher
有没有使用开发者扩展程序的方法可以实现这个? - Adam Fowler
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接