2016-10-12 72 views
0

自分のライブラリをBrythonでインポートしたいと考えています。 This page of the documentationは、pythonパスに適切なディレクトリを追加することで、どのように表示するのかを示していますが、Brythonのインポートを行うことができないため、動作させることができません。sysBrythonを使用してライブラリをインポートする方法

はここBrythonドキュメントの最初のページから、最も簡単なサンプルコードです:

<html> 
<head> 
<script src="../src/Brython3.2.8/brython.js"></script> 
</head> 
<body onload="brython()"> 
<script type="text/python"> 
    from browser import document, alert 

    def echo(ev): 
    alert(document["zone"].value) 

    document['mybutton'].bind('click', echo) 
</script> 
<input id="zone"><button id="mybutton">click !</button> 
</body> 
</html> 

そして、それが正常に動作します。

しかし、私はSYSインポートしようとします

<html> 
<head> 
<script src="../src/Brython3.2.8/brython.js"></script> 
</head> 
<body onload="brython()"> 
<script type="text/python"> 
    import sys 
    from browser import document, alert 

    def echo(ev): 
    alert(document["zone"].value) 

    document['mybutton'].bind('click', echo) 
</script> 
<input id="zone"><button id="mybutton">click !</button> 
</body> 
</html> 

を次にHTMLが表示されますが、ボタンは何もしません。

クロームの

。コンソールには次のエラーを示しています

brython.js:6929 XMLHttpRequest cannot load file:///C:/Users/XXXXXXXXX/XXXXXX/src/Brython3.2.8/Lib/sys.py?v=1476283159509. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource. 
    $download_module @ brython.js.6929 
    import_py   @ brython.js.6929 
    exec_module   @ brython.js.6929 
etc etc 

だから、どのように私はbrython中のsysをインポートすることができ、および/またはどのように私はPythonで自分のライブラリをインポートすることができますか?

ありがとうございました。

答えて

1

あなたのHTMLコードにbrython_stdlib.jsを含める必要があります。だからあなたのhtmlは次のようになります:

<html> 
    <head> 
     <script src="../src/Brython3.2.8/brython.js"></script> 
     <script src="../src/Brython3.2.8/brython_stdlib.js"></script> 
    </head> 
    <body onload="brython()"> 
     <script type="text/python"> 
      import sys 
      from browser import document, alert 

      def echo(ev): 
       alert(document["zone"].value) 

      document['mybutton'].bind('click', echo) 
     </script> 
     <input id="zone"><button id="mybutton">click !</button> 
    </body> 
</html> 
関連する問題