Я собрал простую программу для автоматизации публикации сообщений на x.com (ранее Twitter) с помощью бесплатной учетной записи X (т. е. вам не нужно платить за учетную запись для запуска этого кода).
Код: Выделить всё
import tweepy
BEARER_TOKEN = ''
API_KEY = ''
API_SECRET_KEY = ''
ACCESS_TOKEN = ''
ACCESS_TOKEN_SECRET = ''
client = tweepy.Client(BEARER_TOKEN, API_KEY, API_SECRET_KEY, ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
client.create_tweet(text='This is the text I would like to post to X')
Обратите внимание, что для запуска этого кода вам необходимо подать заявку на получение статуса разработчика на X.com (
https://developer.x.com/en/portal/dashboard) и сгенерировать различные ключи, необходимые в приведенном ниже коде. Вы можете получить эти ключи, перейдя на портал разработчиков X, затем перейдя в раздел «Проекты и приложения» (слева), выбрав свой проект, а затем выбрав вкладку «Ключи и токены» (середина экрана) и нажав соответствующие кнопки. Возможно, вам придется сначала пройти аутентификацию на вкладке настроек (слева от вкладки «Ключи и токены»), чтобы сгенерировать ключи и токены. Вам также придется установить tweepy через pip.
Я хотел бы улучшить этот код следующим образом:
- Вместо жесткого кодирования текста сообщения я бы хотел, чтобы программа циклически перебирала позиции в файле CSV или аналогичном. Я хотел бы знать, как это сделать в целом, в том числе как это сделать, чтобы код не печатал одну и ту же строку снова и снова. Другими словами, как только код отправит первую строку, он переместится на вторую строку.
- Я хотел бы установить какой-нибудь планировщик для запуска этой программы каждые 30 минут или около того. Итак, в 8 утра код публикует первую строку, затем в 8:30 вторую строку, затем в 9 утра третью и так далее. Я использую Windows, поэтому, возможно, лучше использовать планировщик задач?
Чтобы уточнить, в идеальном сценарии я соберу CSV-файл с 10, 20, 30 и т. д. строками, включающими сообщения за этот день. Затем я включу программу/планировщик, и она будет постепенно проходить по каждой строке, используя определенный пользователем интервал времени (например, 30 минут).
Подробнее здесь:
https://stackoverflow.com/questions/798 ... a-csv-file