-
Рассылка смс в Питоне
Отправлять короткие сообщения можно с помощью любого из многочисленных сервисов смс-рассылок.
Я остановил свой выбор на LittleSMS. Низкая фиксированная цена, удобные API, подробная документация, готовые решения для многих языков и платформ.
Работа с сервисом осуществляется по протоколу HTTP GET-запросами. При регистрации вы получите API-ключ. Этим ключом подписываются все запросы. Ключ не является паролем к учетной записи. Если ключ где-то засветился, немедленно смените его в личном кабинете сервиса.
Для Питона рекомендую использовать мою библиотеку с Гитхаба.
Пример работы:
import littlesms # Инициализация класса api = littlesms.Api("user", "API_key") # Проверка баланса. print api.balance() >>> {u'status': u'success', u'balance': 0.5} # Отправка сообщения. print api.send(u"Hello, World!", "7xxxxxxxxxx") >>> { u'count': 1, u'status': u'success', u'recipients': [u'7xxxxxxxxxx'], u'price': 0.5, u'parts': 1, u'test': 0, u'balance': 0.5, u'messages_id': [u'xxxxxx'] } # Отправка сообщения нескольким адресатам с подменой поля «отправитель». recipients = ("7xxxxxxxxx1", "7xxxxxxxxx2", "7xxxxxxxxx3") print api.send(u"Hello, World!", recipients, sender="Anonym") >>> { u'count': 1, u'status': u'success', u'recipients': [u'7xxxxxxxxx1', u'7xxxxxxxxx2', u'7xxxxxxxxx3'], u'price': 0.5, u'parts': 1, u'test': 0, u'balance': 0.5, u'messages_id': [u'xxxxxx1', u'xxxxxx2', u'xxxxxx3'] } # Если компьютер расположен за прокси со сложной схемой авторизации. PROXY = { "proxy": "172.27.86.8", "port": 3128, "user": "ivan", "passw": "secret" } opener = littlesms.curl_opener(**PROXY) api = littlesms.Api("user", "API_key", opener=opener) # Пример работы в облачной платформе App Engine. opener = littlesms.gae_opener() api = littlesms.Api("user", "API_key", opener=opener) # Пример обработки исключения. try: print api.send(u"Hello, World!", "7xxxxxxxxxx", sender="TooLongSender!!!111") except littlesms.ApiError, e: print e >>> Error 7: incorrect sender
Библиотека активно используется больше года в проекте личного кабинета Читинской энергосбытовой компании. На текущий момент отправлено около 15000 сообщений.