def get_user_groups(session, backup_dir): path = backup_dir if backup_dir else ROOT_DIR tools = VkTools(session) groups = tools.get_all('groups.get', 1000, { 'owner_id': session.token['user_id'], 'extended': 1 }) write_json(groups, path)
def get_wall(session, backup_dir): path = backup_dir if backup_dir else ROOT_DIR create_backup_dir(path) tools = VkTools(session) wall = tools.get_all('wall.get', 100, {'owner_id': session.token['user_id']}) print(wall) create_json(wall, path)
def get_all_album(session, id, backup_dir, title=None): if title is None: title = id tools = VkTools(session) photos = tools.get_all('photos.get', 1000, { 'owner_id': session.token['user_id'], 'album_id': id, 'photo_sizes': 1 }) extractes_photo = extract_photos_to_tmp(photos, title, backup_dir) print('Saved photos: %d, downloaded: %d' % (photos['count'], len(extractes_photo))) return extractes_photo
def get_albums_comments(session, id, backup_dir, title=None): if title is None: title = id tools = VkTools(session) comments = tools.get_all('photos.getAllComments', 100, { 'owner_id': session.token['user_id'], 'album_id': id }) path = get_album_dir_path(title, backup_dir) file = codecs.open('%s/comments.json' % (path), 'w', 'utf-8') file.write(json.dumps(comments, ensure_ascii=False)) file.close() print('Save comments for: %s' % (title))
def print_posts(posts): for p in posts: print(f'- https://vk.com/wall{p["owner_id"]}_{p["id"]}') # Авторизация vk_session = vk_api.VkApi('логин', 'пароль') vk_session.auth() vk = vk_session.get_api() # Скачивание temp = vk.wall.get(count=1, filter='owner') count = temp['count'] print(f'Найдено {count} постов. Загрузка всех постов..') tools = VkTools(vk_session) posts = tools.get_all('wall.get', 100, {'filter': 'owner'})['items'] print('Загрузка завершена') # Фильтрация def is_lottery(post, threshold=7): scores = { 'лот': 7, 'лотере': 10, 'розыгрыш': 8, 'подписк': 5, 'репост': 6, 'победител': 9, 'приз': 2, 'место': 1 }