从 Web 浏览器实例调用本地 python 脚本

Invoke local python script from web browser instance

我正在开发一个 python 脚本(环境:自定义 Linux Mint 17.1),它使用网络浏览器 class 来实例化一个呈现一些 HTML 的浏览器实例。 我想在 HTML 中有一个超链接,点击它会导致 local python 到 运行.

的脚本

还没有找到任何精确的方法来做到这一点.. 任何帮助表示赞赏, TIA, 开湾.

由于您使用的是 PyQt4 和 QtWebKit 模块,因此这样做非常容易。

您创建了一个函数来获取 url 并相应地执行操作。 下面是一些帮助您入门的示例代码:

from PyQt4.QtCore import QUrl
from PyQt4.QtGui import QApplication
from PyQt4.QtWebKit import QWebView, QWebPage
import sys


def linkHandler(url):
    print "[DEBUG] Clicked link is: %s" % url
    if url == "My Triggering URL":
        print "Found my link, launching python script"
    else:
        # Handle url gracefully
        pass



def main():
    app = QApplication(sys.argv)
    webview = QWebView()
    # Tell our webview to handle links, which it doesn't by default
    webview.page().setLinkDelegationPolicy(QWebPage.DelegateAllLinks)
    webview.linkClicked.connect(linkHandler)
    webview.load(QUrl('http://google.com'))
    webview.show()
    return app.exec_()

if __name__ == "__main__":
    main()

P.S。每当您发布代码片段时,最好编辑您的问题并在那里提供信息,因为它会在评论字段中变得一团糟。 P.S.S.下次在你的标签中更具体一些,有很多框架可以实际创建一个浏览器,PyQt4 将是一个很好的开始标签,并且会给你更多的答案。