Старый проект, но тёплые воспоминания о нём:) Переписал в асинхронку, но упёрся в лимиты API VK. Можно обойти если работать через несколько токенов, чередуя от разных пользователей.
Собирает номера с открытых страниц через поиск людей по определённым параметрам(лимит выдачи 1000чел.), либо с любых открытых групп("No limited").
Сохранились записи "ТЕСТОВ", раньше за 14 минут собирала номера с группы в 1млн 307тысяч человек. Сейчас с искусственной задержкой за 9мин 23сек обработала группу на 3млн 313тысяч человек. Можно быстрее.
В этом файле надо указать login:password. Далее selenium с эмулирует вход в ВК, получит токен от приложения через которое всё работает. А далее по "инструкции" в консоли.
Контакты может выгрузить в Exel, или в CSV для загрузки в мобильный телефон. Ну и просто в *.txt хранит всё найденное, но можно сделать типа бэкап запросов...
При работе с программой, каждый выполненный поиск(по критериям поиска или по участникам группы) программа фильтрует, убирает дубли и записывает все найденные данные в data_base.txt
P.S. Возможно что-то ещё, но уже и не помню...