user3191334 user3191334 - 1 year ago 284
Python Question

Using Flask-RESTful in PyCharm

I'm currently learning Python (Flask) and would like to setup a tiny REST API for an HelloWorld. I choose flask_restful to implement the API and followed the tutorial on their website.

The problem is, that PyCharm is telling me the ImportError:

No module named flask_restful

although I implemented the library via the project interpreter in my VirtualEnvironment.

This is my code:

from flask import Flask
from flask_restful import Resource, Api

app = Flask(__name__)
api = Api(app)

class HelloWorld(Resource):
def get(self):
return {'hello': 'world'}

api.add_resource(HelloWorld, '/')

if __name__ == '__main__':

Does anybody know the trick, to use flask_restful correctly?

INFO 2016-11-26 13:25:04,657] Starting admin server at: http://localhost:8000
ERROR 2016-11-26 13:25:07,163]
Traceback (most recent call last):
File "/Users/GamerXX/Documents/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/", line 240, in Handle
handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
File "/Users/GamerXX/Documents/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/", line 299, in _LoadHandler
handler, path, err = LoadObject(self._handler)
File "/Users/GamerXX/Documents/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/", line 85, in LoadObject
obj = __import__(path[0])
File "/Users/GamerXX/PycharmProjects/PartyMate/", line 3, in <module>
from flask_restful import Resource, Api
ImportError: No module named flask_restful
INFO 2016-11-26 13:25:07,169] default: "GET / HTTP/1.1" 500 -

Answer Source

you need to install that python package, you can do it by:

Install Flask-RESTful with pip

pip install flask-restful

The development version can be downloaded from its page at GitHub.

git clone cd flask-restful python develop

A good way is to also use virtualenv to separate python package dependencies from one to an other project.

I just test it and it work on Ubuntu 16.04: ~/repositories$ virtualenv venv_flask_restful New python executable in venv_flask_restful/bin/python2.7 Also creating executable in venv_flask_restful/bin/python Installing setuptools, pip, wheel...done. ~/repositories$ source venv_flask_restful/bin/activate
(flask_restful) ~/repositories$ pip install flask-restful
... ~/repositories$ pip freeze aniso8601==1.2.0 ... Flask==0.11.1 Flask-RESTful==0.3.5 ... ~/repositories$ python * Running on (Press CTRL+C to quit) * Restarting with stat * Debugger is active! * Debugger pin code: 106-365-003 "The wget command on other term is launch at that time" - - [27/Nov/2016 12:18:55] "GET / HTTP/1.1" 200 - ON AN OTHER TERMINAL: ~$ wget -c --read-timeout=5 --tries=0 "" --2016-11-27 12:22:50-- Connexion à… connecté. requête HTTP transmise, en attente de la réponse… 200 OK ~$ cat index.html { "hello": "world" }

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download