ipatov_dn
@ipatov_dn

Как исправить ошибку vk api при парсинге?

import vk
import time

app_id, login, password = 'id_приложения', 'логин', 'пароль'
session = vk.AuthSession(app_id, login, password, scope='messages, wall, friends, groups')
vk_api = vk.API(session, v='5.64')


citys = ['Пенза',
         'Набережные Челны', 'Липецк', 'Тула', 'Киров', 'Чебоксары', 'Калининград', 'Брянск', 'Курск', 'Иваново',
         'Магнитогорск', 'Улан-Удэ', 'Тверь', 'Ставрополь', 'Симферополь', 'Нижний Тагил', 'Белгород',
         'Архангельск,''Владимир', 'Севастополь', 'Сочи', 'Курган', 'Смоленск', 'Калуга', 'Чита', 'Орёл', 'Волжский',
         'Череповец', 'Владикавказ', 'Мурманск', 'Сургут', 'Вологда', 'Саранск', 'Тамбов',
         'Стерлитамак', 'Грозный', 'Якутск', 'Кострома', 'Комсомольск-на-Амуре', 'Петрозаводск', 'Таганрог',
         'Нижневартовск', 'Йошкар-Ола', 'Братск', 'Новороссийск', 'Дзержинск', 'Шахты', 'Нальчик', 'Орск',
         'Сыктывкар', 'Нижнекамск', 'Ангарск', 'Старый Оскол', 'Великий Новгород', 'Балашиха', 'Благовещенск',
         'Прокопьевск', 'Химки', 'Псков', 'Бийск', 'Энгельс', 'Рыбинск', 'Балаково', 'Северодвинск', 'Армавир',
         'Подольск', 'Королёв', 'Южно-Сахалинск', 'Петропавловск-Камчатский', 'Сызрань', 'Норильск', 'Златоуст',
         'Каменск-Уральский', 'Мытищи', 'Люберцы', 'Волгодонск', 'Новочеркасск', 'Абакан', 'Находка', 'Уссурийск',
         'Березники', 'Салават', 'Электросталь', 'Миасс', 'Первоуральск', 'Рубцовск', 'Альметьевск', 'Ковров',
         'Коломна', 'Керчь', 'Майкоп', 'Пятигорск', 'Одинцово', 'Копейск', 'Хасавюрт', 'Новомосковск', 'Кисловодск',
         'Серпухов', 'Новочебоксарск', 'Нефтеюганск', 'Димитровград', 'Нефтекамск', 'Черкесск', 'Орехово-Зуево',
         'Дербент', 'Камышин', 'Невинномысск', 'Красногорск', 'Муром', 'Батайск', 'Новошахтинск', 'Сергиев Посад',
         'Ноябрьск', 'Щёлково', 'Кызыл', 'Октябрьский', 'Ачинск', 'Северск', 'Новокуйбышевск', 'Елец', 'Евпатория',
         'Арзамас', 'Обнинск', 'Новый Уренгой', 'Каспийск', 'Элиста', 'Пушкино', 'Жуковский', 'Артём']
for i in citys:
    cite = i
    print(cite)

    counts = groups = vk_api.groups.search(q='натяжные потолки'+' '+ cite)['count']
    print(counts)

    offset=0
    count=1
    while offset!=counts:
        groups=vk_api.groups.search(q='натяжные потолки'+' '+ cite, offset=offset, count=count)
        group=groups['items'][0]['screen_name']
        offset += 1
        time.sleep(1)
        print(group)


вот такой вот код парсера но эта зараза не обрабатывает while до конца примерно на 1/3 общего количества происходит ошибка group=groups['items'][0]['screen_name'] IndexError: list index out of range
помогите исправить что вообще надо ему?
  • Вопрос задан
  • 452 просмотра
Пригласить эксперта
Ответы на вопрос 1
@entermix
Через API больше 1000 - никак, это указано в документации, но можно схитрить и делать поиск с разными параметрами, например 10 разных городов по 1000 групп, это уже 10000, также можно добавить разную сортировку, если в городе более 1000 групп, затем отфильтровать все, и профит! :)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы