VK
This commit is contained in:
1
last_post_id.txt
Normal file
1
last_post_id.txt
Normal file
@@ -0,0 +1 @@
|
|||||||
|
303367
|
||||||
76
main.py
Normal file
76
main.py
Normal file
@@ -0,0 +1,76 @@
|
|||||||
|
|
||||||
|
import vk_api
|
||||||
|
import time
|
||||||
|
import os
|
||||||
|
import chime
|
||||||
|
import os.path
|
||||||
|
import pickle
|
||||||
|
|
||||||
|
|
||||||
|
# Введите ваш token и id группы
|
||||||
|
access_token = 'vk1.a.5QW0di9TmTh9LV2GalJgCbVolvGlRSZ1DgjXU6NizdeMiZUT3HZGdELZsU8AV2-l9gkuLY9Sh85t5x_ohC_Qp2XKBhg5ve25IzlLXPVJs44oTW4vshYkr4fjoZyppcmtiz-B94oiZNY15PlECXOuEfe1Y30AjOVmYoHxnb56g0W_u5w3ekdjqTYuMu-wmsn7ucEwxVxfJXEDaaEagUZWng'
|
||||||
|
group_id = '58767484'
|
||||||
|
|
||||||
|
# Создание сессии ВКонтакте и авторизация пользователя
|
||||||
|
vk_session = vk_api.VkApi(token=access_token)
|
||||||
|
vk = vk_session.get_api()
|
||||||
|
|
||||||
|
|
||||||
|
# Получение id группы
|
||||||
|
group = vk.groups.getById(group_id=group_id)
|
||||||
|
group_id = group[0]['id']
|
||||||
|
|
||||||
|
|
||||||
|
# Автолайк
|
||||||
|
count = 1 # количество постов для получения
|
||||||
|
posts = vk.wall.get(domain=group_id, count=count)['items']
|
||||||
|
|
||||||
|
i = 1
|
||||||
|
|
||||||
|
# Основной цикл программы
|
||||||
|
while True:
|
||||||
|
try:
|
||||||
|
|
||||||
|
if not os.path.exists('last_post_id.txt'):
|
||||||
|
with open('last_post_id.txt', 'w') as f:
|
||||||
|
f.write('0')
|
||||||
|
|
||||||
|
# Получение списка записей в группе
|
||||||
|
response = vk.wall.get(owner_id=-group_id, count=1)
|
||||||
|
last_post_id = response['items'][0]['id']
|
||||||
|
|
||||||
|
# Сохранение id последней записи
|
||||||
|
with open('last_post_id.txt', 'r+') as f:
|
||||||
|
try:
|
||||||
|
saved_post_id = int(f.read())
|
||||||
|
except:
|
||||||
|
saved_post_id = last_post_id
|
||||||
|
f.write(f"{last_post_id}")
|
||||||
|
print(f"{i}")
|
||||||
|
|
||||||
|
# Проверка наличия новой записи
|
||||||
|
if last_post_id != saved_post_id:
|
||||||
|
chime.success()
|
||||||
|
print(f"Новая запись! https://vk.com/wall{group_id}_{last_post_id}")
|
||||||
|
|
||||||
|
# Добавляем лайк и получаем ответ от API
|
||||||
|
likes_added = vk.likes.add(type='post', owner_id=-group_id, item_id=last_post_id)
|
||||||
|
|
||||||
|
if likes_added['likes']:
|
||||||
|
print(f"Лайк успешно добавлен на запись id {last_post_id}")
|
||||||
|
else:
|
||||||
|
print(f"Ошибка при добавлении лайка на запись id {last_post_id}")
|
||||||
|
with open('last_post_id.txt', 'w') as f:
|
||||||
|
f.write(f"{last_post_id}")
|
||||||
|
|
||||||
|
# Задержка на 10 секунд
|
||||||
|
time.sleep(15)
|
||||||
|
|
||||||
|
except vk_api.exceptions.ApiError as error:
|
||||||
|
print(f"Ошибка API: {error}")
|
||||||
|
time.sleep(15)
|
||||||
|
|
||||||
|
except Exception as error:
|
||||||
|
print(f"Неизвестная ошибка: {error}")
|
||||||
|
time.sleep(15)
|
||||||
|
i = i + 1
|
||||||
Reference in New Issue
Block a user