web-dev-qa-db-fra.com

ModuleNotFoundError: aucun module nommé 'BaseHTTPServer'

J'essaie donc de suivre un tutoriel en ligne sur la façon de travailler avec web.py, et je l'ai installé, mais malheureusement, l'utilisation de ce morceau de code génère une erreur désagréable. Mon code ...

import web

urls = (
    '/(.*)', 'index'
)

app = web.application(urls, globals())


class index:
    def GET(self, name):
        return "Hello", name, '. How are you today?'

if __name__== "__main__":
    app.run()

MON ERREUR:

C:\Users\User\AppData\Local\Programs\Python\Python36-32\python.exe C:/Users/User/PycharmProjects/Webprojects/main.py

Traceback (most recent call last):
  File "C:/Users/User/PycharmProjects/Webprojects/main.py", line 15, in <module>
    app.run()
  File "C:\Users\User\AppData\Local\Programs\Python\Python36-32\lib\site-packages\web\application.py", line 312, in run
    return wsgi.runwsgi(self.wsgifunc(*middleware))
  File "C:\Users\User\AppData\Local\Programs\Python\Python36-32\lib\site-packages\web\wsgi.py", line 59, in runwsgi
    return httpserver.runsimple(func, server_addr)
  File "C:\Users\User\AppData\Local\Programs\Python\Python36-32\lib\site-packages\web\httpserver.py", line 154, in runsimple
    func = LogMiddleware(func)
  File "C:\Users\User\AppData\Local\Programs\Python\Python36-32\lib\site-packages\web\httpserver.py", line 296, in __init__
    from BaseHTTPServer import BaseHTTPRequestHandler
ModuleNotFoundError: No module named 'BaseHTTPServer'

Process finished with exit code 1
6
Cody Vollrath

Cette ligne d'importation ne fonctionnera pas dans Python 3 qui a déplacé BaseHTTPServer vers http.server.HTTPServer

Dans votre cas spécifique, vous devez mettre à jour web.py vers la version actuelle qui fonctionne avec Python 3.

8
Nathan V