Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Написать программу парсинга номеров телефонов пользователей VK.

Для валидации номеров использовать библиотеку phonenumbers на Python.

Библиотека позволяет проверить номер как мировой (с +) так и для страны, дописывая код страны в нужное место.

Общий смысл такой:

Считывание

функция get_users отправляет запрос на vk api вида api.vk.com/method/users.get?user_ids=1,2,3,...,100&fields=contacts по 100 id за раз, ответ парсит json.loads() и возвращает список словарей.

функция write_flie 1000 раз вызывает get_users с id из своего диапазона раз в полсекунды, полученый список сериализирует и пишет в файл папки(книги) с помощью pickle.dump

функция write_book создает папку, файлы в ней и 100 раз вызывает write_flie для своего диапазона id

главная функция выполняет write_book в pool.apply_async 33 раза, запуская 33 асинхронных пула (фактически только 2 или 4 одновременно, по количеству процессоров, остальные ждут в очереди)

Сборка

собираем записи из одного файла книги (100 000 записей) в один датафрейм с помощью pandas, удаляем лишние столбцы, оставляя id и номер телефона, удаляем пустые строки и пишем в датафрейм книги

чистим датафреймы книги от мусора (буквы, знаки и т.д.), пишем его в общий датафрейм. У меня вышло где-то миллион записей

Валидация

Используя phonenumbers.parse три раза с параметрами страны None, "RU" и "UA" (можно еще стран добавить), записываем номера в три колонки. Потом чистка от совпадений пар (id, number) для трех колонок тем же pandas и запись в один датафрейм на 2 колонки (id, номер).

Для одного id могут быть разные номера при валидации для разных стран.

Примечание: такая разбивка по файлам и фреймам, и поэтапный процесс сборки в один фрейм нужна для предотвращения вылета программы из-за нехватки памяти.

Еще для нахождения номеров в строке использовать phonenumbers.PhoneNumberMatcher, потому что может быть указано 2 или больше номеров в одной строчке.

8 лет назад
wowa24
40 летРоссия
9 лет в сервисе
Был
год назад
15 отзывов
  • Похожие заказы
  • $140

    Необходимо реализовать промо-приложение на android для кафе/ресторанов. Приложение будет являться частью клиент-серверной системы автоматизации ресторана. Дизайн-макеты будут предоставлены, необходимо реализовать только кодовую базу. Ещё раз повторяемся, на данном этапе требуется промо-приложение, работы не так много (серверная часть не ...

    Закрыт
    7 лет назад
  • $1500

    Доброго дня! Требуется разработать мобильное приложение под ios+ android + серверная часть + дизайн. На выходе мы должны получить полностью работающее приложение под андроид, опубликованное в плеймаркете.  ТЗ приложил Также должна быть админка, через которую можно администрировать приложение без ...

    Закрыт
    8 лет назад
  • Ищем Android-разработчика для создания мобильного приложения. Перед тем как отправить заявку, заполните анкету на нашем сайте [url=http://gmg-spb.ru/career]http://gmg-spb.ru/career[/url] Все комментарии будут просмотрены, прочитаны и будут даны ответы. После заполнения анкеты и прохождения небольшого собеседования, будет предоставлено ТЗ для оценки ...

    Закрыт
    8 лет назад
  • Нужно сделать приложение стандартными возможностями пока. На стандартных шаблонах. Для iOS и Android. Приложение как дополнение к сайту по прослушиванию онлайн радиостанций. По типу как: https://play.google.com/store/apps/details?id=tunein.player&utm_source=tunein.com&utm_medium=referral&utm_campaign=homepage https://itunes.apple.com/app/apple-store/id418987775?mt=8&referrer=utm_medium%3Dreferral%26utm_source%3Dtunein.com%26utm_campaign%3Dweb_redirect https://itunes.apple.com/us/app/rad.io/id402206359?mt=8&ign-mpt=uo%3D4 https://play.google.com/store/apps/details?feature=search_result&hl=en&id=de.radio.android&referrer=adjust_reftag%3Dc3wktp4CysnwF%26utm_source%3DAppLP%26utm_medium%3Dlink_all

    Закрыт
    8 лет назад
  • Необходимо реализовать обмен данными с устройством на базе модуля HM-11 BLE, подключение и корректная передача потоковых данных, на Android (впоследствии iOS). Ищем грамотного спеца с опытом работы с BLE на Android/iOS. Конкретика по запросу.

    Закрыт
    8 лет назад
  • Необходимо создать мобильное приложение на платформах андроид и iOs для интернет магазина заказа тортов. каталог, поиск, корзина, оплата через сервис Страницы: О магазине Каталог Корзина Страницы оплаты и регистрации Новости Галерея Контент будет постоянно изменяться Нужна возможность админить   В заказе есть ньюанс! к каждому товару могут быть дополнительные ...

    Закрыт
    8 лет назад
  • Требуется разработать мобильное приложение для ios и Android. Каталог продукции (кофе и кофемашины), онлайн заказы, быстрый набор номера. Геолокация и обратная связь.Интеграция с соц.сетями Предложения по срокам и цене в личку

    Закрыт
    8 лет назад