Текстовые сообщения службы коротких сообщений (SMS) используются повсеместно по всему миру. SMS-сообщения легко отправлять с Приложение Python, использующее интерфейс программирования веб-приложений (API). Давайте посмотрим на инструменты, которые нам нужны для быстрого добавления возможности SMS к нашему Приложения Python.
Инструменты, которые нам нужны
Это руководство работает как с Python 2, так и с 3, поэтому убедитесь, что у вас есть один из эти две версии установлены.
- Либо Python 2, либо 3
- pip и
- virtualenv для обработки
- зависимости приложений
- Бесплатная учетная запись Twilio для использования своих
- Веб-API SMS
- Открытый источник
- вспомогательная библиотека Python Twilio ,
- версия 6.0.0
- или позже
Если вам нужна помощь в установке pip и virtualenv, ознакомьтесь с первые несколько шагов как настроить Python 3, Flask и Green Unicorn на Ubuntu 16.04 LTS руководство, которое покажет, как установить системные пакеты для этих инструментов.
Использование веб-API
Мы собираемся использовать веб-API, чтобы упростить и повысить надежность отправки SMS. Направляйтесь к Веб-сайт Twilio и зарегистрируйтесь для получения бесплатной пробной учетной записи отлично подходит не только для отправки текстовых сообщений!), затем войдите в свой существующий аккаунт.
Пробная учетная запись Twilio позволяет отправлять текстовые сообщения на свой подтвержденный номер телефона. Если вы хотите отправить SMS на любой номер телефона в ваша страна или другие страны, тогда вы можете обновить свою учетную запись для отправки сообщения за доли цента.
После регистрации вы получите бесплатный номер телефона в вашей стране. Мы можем использовать этот номер телефона без какой-либо конфигурации для отправки исходящего текста сообщения. Вы также можете получать текстовые сообщения, но это требует изменения веб-перехватчик URL-адреса запроса на экране настройки номера телефона – мы расскажем об этом в будущем сообщении в блоге.
Установка нашей зависимости
Наш код будет использовать вспомогательную библиотеку, чтобы упростить отправку текстовых сообщений. из Python. Мы собираемся установить вспомогательную библиотеку из PyPI в файл virtualenv. Сначала нам нужно создайте файл virtualenv. В вашем терминале используйте следующую команду для создания новый virtualenv. Если вам нужно установить virtualenv, взгляните на как настроить Python 3, Flask и Green Unicorn на Ubuntu 16.04 LTS руководство.
virtualenv sendsms
Активируйте virtualenv.
source sendsms/bin/activate
Командная строка изменится после того, как мы правильно активируем virtualenv. примерно так:
Теперь установите вспомогательную библиотеку Twilio Python. Мы используем 6.0.0 или более поздней версии библиотеки, что важно, поскольку синтаксис в этот пост обратно несовместим с 5.x и предыдущим помощником Twilio версии библиотеки.
pip install twilio>=6.0.0
Теперь вспомогательная библиотека установлена, и мы можем использовать ее с кодом Python. мы создаем и выполняем.
Отправка SMS с Python
Запустите интерпретатор Python в терминале с помощью команды python
, или создайте новый файл с именем send_sms.py
.
Нам нужно получить учетные данные нашей учетной записи из консоли Twilio для подключения наш код Python в нашу учетную запись Twilio. Перейти к Twilio Console и скопируйте SID учетной записи. и токен аутентификации в ваш код Python.
Введите следующий код в интерпретатор или в новый файл Python. Вы также можете скопировать и вставить код из репозиторий Git-кода-примеров блога в Организация Full Stack Python на GitHub .
# we import the Twilio client from the dependency we just installed from twilio.rest import Client # the following line needs your Twilio Account SID and Auth Token client = Client("ACxxxxxxxxxxxxxx", "zzzzzzzzzzzzz") # change the "from_" number to your Twilio number and the "to" number # to the phone number you signed up for Twilio with, or upgrade your # account to send SMS to any phone number client.messages.create(to="+19732644152", from_="+12023351278", body="Hello from Python!")
Все строки выше, начинающиеся с #
, являются комментариями. Как только вы войдете в это код в интерпретатор или запустите скрипт Python, используя python send_sms.py
будет отправлено SMS.
Через несколько секунд вы должны увидеть сообщение на вашем телефоне. Я на iOS, вот как выглядело полученное мной текстовое сообщение.
Это оно! Вы можете добавить этот код в любой код Python для отправки текстовых сообщений. Просто держите свой токен аутентификации в секрете, так как он позволит любому, у кого он есть, использовать ваша учетная запись для отправки и получения сообщений.
Вопросов? Свяжитесь со мной через Twitter @fullstackpython или @mattmakai . Я также на GitHub с имя пользователя mattmakai .
Что-то не так в этом посте? Вилка исходный текст этой страницы на GitHub и отправьте запрос на перенос.