Our quickstarts are designed to get you working with Twilio in record time. We’ve used the same Python ingredients time and time again so you only need to go through environmental setup once.
To complete the Twilio Python quickstarts, you’ll need to have the following tools installed:
- ngrok or some other way to expose a URL for webhooks
If you are on a Mac or Linux machine, you most likely already have Python installed. Windows users can follow this excellent tutorial. There are more advanced configuration instructions at the official Python website.
Many third-party Python libraries, such as the math library
numpy, the MySQL connector library
MySQL-python, and Flash, are made available as “packages”. They are installed using a “package manager”. Most Python developers prefer to use a package manager called
easy_install is another.
virtualenv is a tool that lets you create a special sandbox for each of your Python projects, to ensure that you have exactly the right version of every tool you need for that particular project. Furthermore,
virtualenv makes sure that you don’t accidentally break your app if someone updates your Python packages.
We first need to make sure that we install
virtualenv for the correct version of Python on your computer. Open a terminal and run the following command:
It should say something like the following:
python --version Python 3.9.1
Find the instructions below to install
virtualenv for the version of Python reported by your terminal.
Run the following command:
If your Python version is 2.5, 2.6 or 2.7, run
easy_install with your Python version number, like this:
Replace the version number 2.7 above with 2.5 or 2.6 if you have that version installed.
pip is included in Python 3.4+ installations, so just install
pip install virtualenv
If you get any
permission denied errors, try running
sudo python instead of
If you get an
easy_install-2.5: command not found error, you may need to check that Python is installed, or add the folder containing
easy_install program to your
If you get an error that looks like this:
Installing pip script to /usr/local/bin error: /usr/local/bin/pip: Permission denied
Then you need to run the install script as the admin user, like this:
sudo easy_install-2.6 virtualenv
Once you have
virtualenv installed, switch to the directory you’ll use for your tutorial, and create a virtual environment:
cd Documents/my_tutorial_folder virtualenv --no-site-packages .
Now activate the virtual environment.
On Windows, use
You will need to activate your environment before every session with your Python server.
You can tell your virtual environment is running because your terminal will have the name of the enclosing folder listed above it:
Now we’re going to install Flask and the
twilio-python library. Create a file called
requirements.txt and add the following lines to it:
Install these packages with
bin/pip install -r requirements.txt
Create a file called
run.py and add these lines to it:
from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "Hello World!" if __name__ == "__main__": app.run(debug=True)
Now run it. In your terminal, type:
You should see the output:
* Running on http://127.0.0.1:5000/
Navigate to http://localhost:5000 in a browser. You should see a “Hello World” message.
You now have everything you need to start using Twilio and Python! Let’s start coding.