Здесь я опишу установку библиотеки yowsup, которой я пользовался, а также регистрацию номера whatsapp в этой библиотеке.
Я работал в Ubuntu, поэтому терминальные команды буду писать для нее.
Для начала нужно установить библиотеку yowsup. Я писал на python 3.6, поэтому
pip3 install yowsup
Теперь в терминале регистрируем номер телефона. Номер не должен быть никак связан с whatsapp.
yowsup-cli registration --requestcode sms --phone 7xxxxxxxxxx --cc 7 --mcc 250 --mnc xx --env android
phone — ваш номер телефона, начинающийся с 7
cc — country code — это код страны (для России это 7)
mcc — mobile country code — это другой код страны (для России это 250)
mnc — mobile network code — это код вашего оператора. (01 — МТС, 02 — мегафон, 20 — теле2, 99 — билайн)
В ответ придет смс с кодом вида XXX-XXX, который используем для подтверждения регистрации.
yowsup-cli registration --register xxx-xxx --phone 7хххxxxxxxx --cc 7
Сервер сообщит об удачной регистрации.
Далее в файле
run.py
python3 run.py send 7xxxxxxxxxx 'message'
где 7xxxxxxxxxx - номер на который отсылается сообщение, 'message' - само сообщение.
Чтобы принимать сообщения в фоне, пишем
python3 run.py recv
Скрипт будет записывать все сообщения и адрес, откуда они пришли. После того как мы закроем процесс (CTRL+C, например), программа выведет нам список всех адресантов и сообщений.