1

我正在尝试使用 Brython 在 python 中导入PSAW库,我有以下代码:

<!DOCTYPE html>
<html>

    <head>
        <script type="text/javascript" src="brython.js"></script>
        <script type="text/javascript" src="brython_stdlib.js"></script>
    </head>

    <body onload="brython()">

        <script type="text/python">
        from browser import document
        document <= "Hello world !"
        </script>

    </body>
</html>

这可以正常工作,但是当我像这样添加 PSAW 时:

<!DOCTYPE html>
<html>

    <head>
        <script type="text/javascript" src="brython.js"></script>
        <script type="text/javascript" src="brython_stdlib.js"></script>
    </head>

    <body onload="brython()">

        <script type="text/python">
        from browser import document
        import PushshiftAPI
        document <= "Hello world !"
        </script>

    </body>
</html>

我在chrome中收到以下错误:

GET http://localhost:8000/requests.py?v=1571453029466 404 (File not found)
Error 404 means that Python module requests was not found at url http://localhost:8000/requests.py
GET http://localhost:8000/requests/__init__.py?v=1571453029904 404 (File not found)
Error 404 means that Python module requests was not found at url http://localhost:8000/requests/__init__.py
GET http://localhost:8000/Lib/site-packages/requests.py?v=1571453030155 404 (File not found)
Error 404 means that Python module requests was not found at url http://localhost:8000/Lib/site-packages/requests.py
GET http://localhost:8000/Lib/site-packages/requests/__init__.py?v=1571453030212 404 (File not found)
Error 404 means that Python module requests was not found at url http://localhost:8000/Lib/site-packages/requests/__init__.py
Traceback (most recent call last):
ImportError: No module named requests

我认为这意味着它需要 Brython 无法找到的其他模块,但我不确定如何确定需要哪些模块以及如何正确添加它们。这是我的文件目录:

文件目录图像

更新:

我在虚拟环境中安装了 PSAW 和 PRAW 并将所有包复制到目录中,如下所示:

更新的文件目录图像

但是,尝试导入请求时我仍然收到以下问题

Traceback (most recent call last):
AttributeError: 'NoneType' object has no attribute 'load_module'
Uncaught Error
    at Object._b_.AttributeError.$factory (eval at $make_exc (brython.js:7609), <anonymous>:41:354)
    at attr_error (brython.js:6587)
    at Object.$B.$getattr (brython.js:6701)
    at Object.import_hooks (brython.js:13361)
    at Object.$B.$__import__ (brython.js:9097)
    at __import__ (brython.js:6761)
    at _import_module179 (eval at run_py (brython.js:8906), <anonymous>:238:45)
    at _resolve183 (eval at run_py (brython.js:8906), <anonymous>:539:84)
    at method (brython.js:5321)
    at load_module195 (eval at run_py (brython.js:8906), <anonymous>:1377:148)

知道这里发生了什么吗?

4

1 回答 1

1

404 错误表示“找不到文件”。您的浏览器正在尝试访问位于“ http://localhost:8000/requests/__init__.py?v=1571453029904 ”(以及回溯中的其他位置)的库,但找不到它。尝试在浏览器中访问 URL。它会返回一个文件吗?如果在那里找不到文件,Brython 也无法找到。尝试重新排列您的文件系统,直到您可以在浏览器中访问 .py 文件

于 2019-10-20T01:37:53.093 回答