在chrome插件中结合Python和Javascript

2024-04-26 12:45:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在编写一个chrome扩展,它向用户访问的每个页面注入一个内容脚本。我要做的是获取python函数的输出,以便在内容脚本中使用(不能用javascript编写,因为它需要原始套接字来连接到远程SSL服务器)。在

我曾读过,人们可能会使用CGI和Ajax之类的工具,将python代码的输出转换成javascript代码,但我遇到了3个问题:

  1. 我不能允许在本地服务器上托管python代码,因为它是安全敏感的数据,只有本地计算机才能知道。

  2. Chrome要求HTTP和HTTPS不能混合——如果用户访问HTTPS网站,我就不能在HTTP服务器上托管python代码。

  3. 当我试图访问本地文件时,我认为Chrome甚至不支持扩展名上的CGI,它所做的只是打印出文本(python代码本身),而不是我定义的输出(我试图使用Flask)。正如我在1中所说的,无论如何我都不应该尝试这个,但这只是一个附加说明。

所以我的问题是,如何在用javascript构建的内容脚本中获得python函数的输出?在


Tags: 函数代码用户https服务器脚本httpssl
2条回答

在用Javascript构建的内容脚本中获取Python脚本的输出的唯一方法是使用XMLHttpRequest调用该文件。如您所述,如果页面通过HTTPS提供服务,则必须使用HTTPS连接。一种解决方法是调用后台脚本,该脚本可以从它喜欢的任何协议中获取数据,并将其返回到内容脚本中。在

Native Messaging可能是你的答案。在

您可以指定一个本机主机应用程序,扩展或应用程序可以调用它(如果是扩展,可能通过后台页面调用),它可以是Python脚本。在

实际上,the sample app为它使用了一个Python脚本。在

相关问题 更多 >