zoukankan      html  css  js  c++  java
  • 使用Python开发chrome插件

    本文由 伯乐在线 - xianhu 翻译,Daetalus 校稿。未经许可,禁止转载!
    英文出处:pythonspot.com。欢迎加入翻译小组

    谷歌Chrome插件是使用HTML、JavaScript和CSS编写的。如果你之前从来没有写过Chrome插件,我建议你读一下这个。在这篇教程中,我们将教你如何使用Python代替JavaScript。

    创建一个谷歌Chrome插件

    首先,我们必须创建一个清单文件:manifest.json。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    {
      "manifest_version": 2,
     
      "name": "Python Chrome Plugin",
      "description": "This extension runs Python code.",
      "version": "1.0",
     
      "browser_action": {
        "default_icon": "icon.png",
        "default_popup": "popup.html"
      },
      "permissions": [
        "activeTab",
        "https://ajax.googleapis.com/"
      ]
    }

    然后创建一个名为popup.html的文件:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    <!doctype html>
    <!--
     This page is shown when the extension button is clicked, because the
     "browser_action" field in manifest.json contains the "default_popup" key with
     value "popup.html".
     -->
    <html>
      <head>
        <title>Getting Started Extension's Popup</title>
        <style>
          body {
            font-family: "Segoe UI", "Lucida Grande", Tahoma, sans-serif;
            font-size: 100%;
          }
          #status {
            /* avoid an excessively wide status text */
            white-space: pre;
            text-overflow: ellipsis;
            overflow: hidden;
            max- 400px;
          }
        </style>
     
        <!--
          - JavaScript and HTML must be in separate files: see our Content Security
          - Policy documentation[1] for details and explanation.
          -
          - [1]: https://developer.chrome.com/extensions/contentSecurityPolicy
         -->
        <script src="popup.js"></script>
      </head>
      <body>
        <div id="status"></div>
        <img id="image-result" hidden>
      </body>
    </html>

    最后得到一个图标,并保存为icon.png。打开chrome://extensions,点击开发者模式。点击“加载未打包扩展程序”,选择文件夹,点击OK。

    为Chrome扩展程序添加Python

    现在你拥有了最基本的权利,我们可以在代码中添加Python。为了能在一个浏览器中运行Python,你有很多个选择,包括Brython和emcascripten。我们决定使用Brython。我们将从一个服务器运行Brython脚本。改变popup.html的内容:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <meta charset="iso-8859-1">
    <style>
    body {   
        margin: 0 !important;
        padding: 0 !important;
         800;
    }
     
    #frame {
        overflow: hidden;
        790;
        height:324;
    }
    </style>
    </head>
    <body onLoad="">
    <iframe src=http://brython.info/console.html id="frame" seamless="seamless" scrolling="no"></iframe>
    </body>
    </html>

    重启下你的插件,你就会在你的谷歌Chrome浏览器中得到一个Python(Brython)解释器。

    运行你自己的脚本

    为了能够运行你自己的脚本,简单地修改一下popup.html框架中的url即可:

    1
    <iframe src="BRYTHON SCRIPT URL" id="frame" seamless="seamless" scrolling="no"></iframe>

    这个脚本应该运行在你自己的服务器上。你可以从网上运行任意的Brython脚本。利用Brython,你可以简单地在脚本标签中输入Python代码。看一下这个Brython的例子,或者简单地浏览下这个网站

    总结:

    Chrome插件是使用HTML、JavaScript和CSS创建的。我们想知道在谷歌Chrome插件中能否使用Python代码。我们最终得到了一个浏览器中的Python解释器和执行Python脚本的能力。记住,这只是个实现性的结果,只是一个玩具,在这一点上,我不建议你将所有的插件都移植或建立在Brython上。

    关于作者: xianhu

  • 相关阅读:
    《Perceptual Losses for Real-Time Style Transfer and Super-Resolution》论文笔记
    《StackGAN: Text to Photo-realistic Image Synthesis with Stacked GAN》论文笔记
    《Image-to-Image Translation with Conditional Adversarial Networks》论文笔记
    深度学习模型相关知识(2)
    深度学习模型相关知识(1)
    常用深度学习模型介绍(2)
    1111111111111111111
    常用深度学习模型介绍(1)
    tensorflow函数介绍 (5)
    tensorboard可视化(先写一点点)
  • 原文地址:https://www.cnblogs.com/rrxc/p/4496380.html
Copyright © 2011-2022 走看看