Вариантов море. Вы общаетесь с сервисом через приложение, это уже не инкогнито (вообще инкогнито в Интернет это фикция если вы не какер ;-). Сервис тупо копит все варианты произношения. Сервис обучает кто-то еще и т.д.
Уважаемый, я не знаю что вы смотрели, но приведенная ссылка это SDK Facebook для Python, как вы и просили. Конкретно ваших примеров может и не оказаться , это не ЕГ.
По своему опыту и потому что сервисы учатся вас понимать, и они научаться, как бы вы не говорили. Людей можно найти в И-нете, даже как-то встречал сервисы для общения.
Это ссылка на SDK для Python, в документации сказано, что поддерживается официальный АПИ Facebook. Вам осталось разобраться с ним и использовать. Примеры есть в комплекте.
Да, и это у вас не сервис. Сервис или демон в терминах *nix - это некий процесс запускаемый специальным образом, специальной командой и предназначенный работать на фоне. В вашем случае, это просто консольная программа, до сервиса она еще не "дозавернута".
Вы вызываете requests.post(url, data=json.dumps(data)), видимо перед этим вызовом идет трассировка
33_0 {'response': {'tw': {'posted': '838708501492944897'}, 'vk': {'posted': '30...
Таких строк две, значит вызов requests.post выполняется дважды, как вы и желали.
Теперь. В трассировке присутствуют строки
[06/Mar/2017 11:11:04] "POST /api/v1/message/send HTTP/1.1" 200 291
В вашем коде эта трассировка отсутствует, но она между трассировками вызова requests.post. Видимо вывод идет в вызываемом методе requests.post. Такого вывода много, значит повторы идут ВНУТРИ requests.post. Т.е. вне вашего контроля. Я подозреваю что это попытки, по какой-то причине со стороны сервера видимо идут ошибки.
Судя по приведенным логам контент передается в post только два раза. А вот трассировка POST (которая видимо идет где-то ниже в post) вызывается многократно.
В каком случае? В случае писать собственный движок WP? Или если использовать WP? Я вот пользуюсь WP и даже не пытался разобраться как оно там храниться в БД. АПИ вполне хватает.