Форум программистов, компьютерный форум, киберфорум
C#: API, боты
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.59/22: Рейтинг темы: голосов - 22, средняя оценка - 4.59
0 / 0 / 4
Регистрация: 18.04.2013
Сообщений: 45
1

VK API как обойти ограничение api vk.com в 1000 человек?

16.10.2015, 23:37. Показов 4378. Ответов 4
Метки нет (Все метки)

Добрый день. У меня есть вопрос - как получить больше 1000 человек в запросе на поиск людей?
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
while (true)
            {
                int offset = page*limit;
                string requestString =
                    String.Format(
                        "https://api.vk.com/method/users.search?offset={0}&count={1}&university=1170190&sex=2&has_photo=1&access_token={2}",
                        offset,limit,
                        token);
                HttpWebRequest request =
                    (HttpWebRequest) WebRequest.Create(requestString);
 
                request.Method = "GET";
                request.Accept = "application/json";
 
 
                HttpWebResponse response = (HttpWebResponse) request.GetResponse();
                StreamReader reader = new StreamReader(response.GetResponseStream());
                string output = reader.ReadToEnd();
 
                dynamic result = JsonConvert.DeserializeObject(output);
                response.Close();
                page++;
            }
Вот как я делаю-постепенно увеличиваю offset, но выводится только первые 994, хотя response count = 4072 - т.е всего по этому запросу 4072 человека. Пробовал выводить по 100 человек - выводится, но все равно останавливается на 994. Как мне преодолеть этот порог?
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.10.2015, 23:37
Ответы с готовыми решениями:

Как можно обойти ограничение API VK?
Здравствуйте! Пишу автоответчик сообщении на ВК, но есть ограничения на ВК (метод - messenge.send)...

Как в x64 системе обойти редиректинг в реестре? Что за API-функция RegDisableReflectionKey?
Есть такая функция - RegDisableReflectionKey. В Что нужно подключить в uses, чтобы ею...

Steam API - как можно получить медиану цен через API?
Ребят, как можно получить медиану цен через API ? Интересует количество продаж за последний день....

Android SDK Manager не отображает платформы 2.3.3 (API 10), 2.3.1 (API 9). Как быть?
Добрый день! Использую Android Studio под Windows 7. Из-за несовместимости с операционной системой...

4
Эксперт .NET
15449 / 11712 / 3076
Регистрация: 17.09.2011
Сообщений: 19,603
18.10.2015, 11:03 2
Здравствуйте.

Цитата Сообщение от blackstarr2 Посмотреть сообщение
постепенно увеличиваю offset, но выводится только первые 994
То есть запрос offset=0&count=1000 и offset=1000&count=1000 возвращают один и тот же список одних и тех же людей?

Цитата Сообщение от blackstarr2 Посмотреть сообщение
response count = 4072
Response Count — это где?
Если судить по документации, то метод users.search возвращает список: объект с двумя свойствами: count и items, где первое свойство — количество найденных объектов, второе — массив с объектами.
0
0 / 0 / 4
Регистрация: 18.04.2013
Сообщений: 45
18.10.2015, 11:11  [ТС] 3
"То есть запрос offset=0&count=1000 и offset=1000&count=1000 возвращают один и тот же список одних и тех же людей?"
Нет, проблема в том что в ответе на запрос count показывает 4072 пользователя, а у меня получается их всего 994 в items и больше 994 никак не получается получить.
"Response Count — это где?" это в ответе на запрос.
0
Эксперт .NET
15449 / 11712 / 3076
Регистрация: 17.09.2011
Сообщений: 19,603
18.10.2015, 11:26 4
Цитата Сообщение от blackstarr2 Посмотреть сообщение
Нет, проблема в том что в ответе на запрос count показывает 4072 пользователя, а у меня получается их всего 994 в items и больше 994 никак не получается получить.
Значит при использовании сдвига все-таки возвращаются массивы с разными пользователями, так?
Так делайте сдвиг на количество фактически считанных объектов в массиве.
0
0 / 0 / 4
Регистрация: 18.04.2013
Сообщений: 45
18.10.2015, 11:29  [ТС] 5
Я его делаю. Я когда &count=20 ставил, то все равно когда до 994 доходит, дальше не возвращаются пользователи.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.10.2015, 11:29

Ограничение на количество запросов к vk api
Всем доброго времени суток. Пишу программу, которая для двух пользователей будет находить...

Ограничение на количество запросов к vk api
Всем доброго времени суток. Пишу программу, которая для двух пользователей будет находить...

Android Studio не дает работать с API 8 без установленного API 21
Удалил все не интересующие меня библиотеки и поставил только API Level 8. Но при создании...

Ошибка minSDK(API 23, N preview) != deviceSDK(API 17)
Недавно начал учить андроид и возникла такая ошибка, когда я пытаюсь запустить проект на своем...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.