Перейти к содержимому

Python как отправить смс на телефон

  • автор:

How to Send SMS Text Messages with Python

Short Message Service (SMS) text messages are ubiquitous for communication all over the world. It is easy to send SMS text messages from a Python application using a web application programming interface (API). Let’s take a look at the tools we need to quickly add SMS capability to our Python apps.

Tools We Need

This guide works with both Python 2 and 3, so make sure you have one of those two versions installed.

  • Either Python 2 or 3 and virtualenv to handle application dependencies
  • A free Twilio account to use their SMS web API
  • Open source Twilio Python helper library

If you need assistance getting pip and virtualenv installed, check out the first few steps of the how to set up Python 3, Flask and Green Unicorn on Ubuntu 16.04 LTS guide that’ll show how to install system packages for those tools.

Using a Web API

We’re going to use a web API to make sending SMS easier and more reliable. Head to the Twilio website and sign up for a free trial account. If you already have a Twilio account (and you should — it’s awesome for more than just sending text messages!) then sign into your existing account.

The Twilio trial account allows you to send text messages to your own validated phone number. When you want to send SMS to any phone number in your country or other countries then you can upgrade your account to send messages for fractions of a cent.

After signing up, you will get a free phone number in your country. We can use that phone number without any configuration to send outbound text messsages. You can also receive text messages but that requires changing the Request URL webhook in the phone number configuration screen — we’ll cover that in a future blog post.

Installing Our Dependency

Our code will use a helper library to make it easier to send text messages from Python. We are going to install the helper library from PyPI into a virtualenv. First we need to create the virtualenv. In your terminal use the following command to create a new virtualenv. If you need to install virtualenv take a look at the how to set up Python 3, Flask and Green Unicorn on Ubuntu 16.04 LTS guide.

Activate the virtualenv.

The command prompt will change after we properly activate the virtualenv to something like this:

Now install the Twilio Python helper library.

The helper library is now installed and we can use it with the Python code we create and execute.

Sending SMS From Python

Fire up the Python interpreter in the terminal using the python command, or create a new file named send_sms.py .

We need to grab our account credentials from the Twilio Console to connect our Python code to our Twilio account. Go to the Twilio Console and copy the Account SID and Authentication Token into your Python code.

Enter the following code into the interpreter or into the new Python file.

All the lines above that start with # are comments. Once you enter that code into the interpreter or run the Python script using python send_sms.py the SMS will be sent.

In a few seconds you should see a message appear on your phone. I’m on iOS so here’s how the text message I received looked.

That’s it! You can add this code to any Python code to send text messages. Just keep your Auth Token secret as it’ll allow anyone that has it to use your account to send and receive messages.

Questions? Contact me via Twitter @fullstackpython or @mattmakai. I’m also on GitHub with the username mattmakai.

See something wrong in this post? Fork this page’s source on GitHub and submit a pull request.

Отправка SMS через Python [в одну функцию]

27 марта 2017 г. Archy Просмотров: 79092 RSS 8
Примеры Python » Общие вопросы python sms, python sms скрипт, python отправить sms, python примеры, python смс, смс тарифы

Отправка SMS Python

Была задача отправить SMS-ки большому списку номеров телефона с уточнением цены за всю рассылку «До» ее отправки. Сперва хотел спарсить цены на главном сайте биллинга в зависимости от страны и оператора, потом проверять какие номера какому оператору и стране принадлежат тем самым узнать окончательную цену всей рассылки. Но, благодаря одному качественному сервису по отправке SMS эта функция была встроена в базовый функционал их API.

Хотел найти уже готовый вариант скрипта по отправки sms на Python, но все было не то. Как то слишком большой код для такого простого дела. Написал небольшую функцию которая облегчила мою работу и надеюсь, что и вашу тоже.

Шаг 1

Пожалуй самый главный шаг при начале написания скрипта по отправке смс. Поиск хорошей системы по отправке смс, поискал в интернете, прочитал отзывы и каждый раз перед глазами мелькала одна компания SMSC. Зарегистрировался, посмотрел их API и обрадовался, что имеющейся функционал в полной мере удовлетворяет мои требования для решения поставленной задачи.

Шаг 2

После регистрации вам нужно будет зарегистрировать свое уникальное имя отправителя. После некоторых изменений правил от сотовых операторов, возможность менять динамично имя отправителя отменили. Теперь приходится ждать подтверждения имени отправителя, но это не страшно — поддержка работает быстро!

Совет: Чем адекватнее и уникальнее будет название, тем быстрее и без лишних вопросах пройдете проверку.

PS: Да, имя отправителя можно не регистрировать, но тогда ваши получатели будут видеть вместо имени — обычный незнакомый им номер телефона.

Заходим во вкладке Настройки -> Имена отправителей:

Отправка SMS через Python

Нажимаем «Добавить новое имя» и наполняем поля. Все поля обязательны, в поле «Комментарий» так же лучше будет если вы опишите как можно четче необходимость этого имени. Чем адекватнее будут наполнены поля тем быстрее будет активация. Ждем пока статус будет » допущено » и можем использовать данное имя в нашей программе.

Скрипт отправки SMS Python

Нам понадобиться библиотеки urllib, json, time

Первая urllib и time уже установлены, а вот json если еще не устанавливали для других нужд придется устанавливать сейчас.

Всю работу выполняет одна функция send_sms() ей передаются параметры:

  • phones — номер телеофна в международном формате, можно один а можно через точку с запятой разделять несколько «711111111;72222222»
  • text — сам текст для смс-ки
  • total_price — 0 просто отправляет сообщение снимая деньги, 1 не отправляет письмо но возвращает отчет сколько будет стоить отправка.

Настройка

В самом теле функции меняем данные для входа в SMSC на свои.

login, password будут логин и пароль для входа в личный кабинет в smsc. В sender нужно прописать имя отправителя которого вам подтвердили служба поддержки.

Рассылка SMS на Python

Ограничение нужна если отправляется один и тот же текст.

Вот и все, скрипт можно менять. Тарифы на их сайте не окончательные их можно менять в зависимости от объемов вашей рассылки. Тех. поддержка очень быстрая так, что в случае чего можете писать там. Если возникнут проблемы со скриптом — пишите в комментариях помогу чем смогу 😉

Как отправлять текстовые SMS-сообщения с помощью Python

Практическое руководство по отправке SMS (текстовых сообщений) с использованием языка программирования Python.

  • Автор записи

Текстовые сообщения службы коротких сообщений (SMS) используются повсеместно по всему миру. SMS-сообщения легко отправлять с Приложение Python, использующее интерфейс программирования веб-приложений (API). Давайте посмотрим на инструменты, которые нам нужны для быстрого добавления возможности SMS к нашему Приложения Python.

Инструменты, которые нам нужны

Это руководство работает как с Python 2, так и с 3, поэтому убедитесь, что у вас есть один из эти две версии установлены.

  • Либо Python 2, либо 3 и для обработки
  • зависимости приложений
  • Бесплатная учетная запись Twilio для использования своих
  • Открытый источник ,
  • или позже

Если вам нужна помощь в установке 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. примерно так:

Теперь установите вспомогательную библиотеку Twilio Python. Мы используем 6.0.0 или более поздней версии библиотеки, что важно, поскольку синтаксис в этот пост обратно несовместим с 5.x и предыдущим помощником Twilio версии библиотеки.

Теперь вспомогательная библиотека установлена, и мы можем использовать ее с кодом Python. мы создаем и выполняем.

Отправка SMS с Python

Запустите интерпретатор Python в терминале с помощью команды python , или создайте новый файл с именем send_sms.py .

Нам нужно получить учетные данные нашей учетной записи из консоли Twilio для подключения наш код Python в нашу учетную запись Twilio. Перейти к Twilio Console и скопируйте SID учетной записи. и токен аутентификации в ваш код Python.

Введите следующий код в интерпретатор или в новый файл Python. Вы также можете скопировать и вставить код из репозиторий Git-кода-примеров блога в Организация Full Stack Python на GitHub .

Все строки выше, начинающиеся с # , являются комментариями. Как только вы войдете в это код в интерпретатор или запустите скрипт Python, используя python send_sms.py будет отправлено SMS.

Через несколько секунд вы должны увидеть сообщение на вашем телефоне. Я на iOS, вот как выглядело полученное мной текстовое сообщение.

Это оно! Вы можете добавить этот код в любой код Python для отправки текстовых сообщений. Просто держите свой токен аутентификации в секрете, так как он позволит любому, у кого он есть, использовать ваша учетная запись для отправки и получения сообщений.

Вопросов? Свяжитесь со мной через Twitter @fullstackpython или @mattmakai . Я также на GitHub с имя пользователя mattmakai .

Что-то не так в этом посте? Вилка исходный текст этой страницы на GitHub и отправьте запрос на перенос.

How To Send SMS Using Python

Shashikant Dwivedi

Hello everyone In this article I am going to discuss how you can send SMS using python. It is going to be a very short article.

For this purpose, we are going to use text local API. For that, you have to create an account in textlocal.

On a trial basis, you will get 10 messages for free. And also if you want to purchase the SMS bundle you can purchase it from there.

According to my observation, it is the cheapest and best in terms of performance.

Here is the link to the pricing textlocal pricing.

Once you create your account and get the API key from the settings.

Here is the code to send SMS from your python script.

In the above code replace <TEXTLOCAL_API_KEY> with your API key.

And the default username will be TXTLCL .

Note — The code in this article is taken from the official site of textlocal.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *