D
D
Dmitry2017-05-20 01:01:48
Python
Dmitry, 2017-05-20 01:01:48

How to fix vk api error when parsing?

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)

here is the parser code, but this infection does not process while until the end, approximately 1/3 of the total number of errors group=groups['items'][0]['screen_name'] IndexError: list index out of range
help fix what is generally needed him?

Answer the question

In order to leave comments, you need to log in

1 answer(s)
E
entermix, 2017-05-20
@entermix

Through the API, more than 1000 - no way, this is indicated in the documentation, but you can cheat and do a search with different parameters, for example, 10 different cities with 1000 groups each, this is already 10000, you can also add different sorting, if there are more than 1000 groups in the city, then filter everything , and profit! :)

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question