Хотите улучшить этот вопрос? Переформулируйте вопрос так, чтобы он был сосредоточен только на одной проблеме.
Закрыт 1 год назад.
Как это обычно бывает. Есть магазины-поставщики, есть дилеры. И эти магазины-поставщики не могут дать никаких выгрузок, тем более актуальных. Единственный путь синхронизировать наличие товаров - парсить. Но когда количество товаров около 500 тысяч штук, то простой php-curl сдаётся. Может занять больше суток.
Поэтому, необходимо проходить по ссылкам многопоточно, ну и с прокси серверами, чтобы какой-нибудь cloudflare не заблокировал.
Есть ли какие-нибудь хорошие инструменты для такого парсинга. Интересует какая-то обёртка для упрощенной работы с многопоточностью и прокси серверами. Чтобы можно было ввести сколько один прокси сервер должен делать запросов в минуту, чтобы на вход пул урл только принимал и сам распределял их по потокам и т.д. Язык желательно один из: Python, PHP, GoLang. Может кто-то знает хороший инструмент?
UPDATE:
Оказывается php-curl-class не плохо справляется с задачей.Но всё равно, может, кто-то еще что-то знает.
https://github.com/php-curl-class/php-curl-class/blob/master/examples/multi_curl_proxies.php
наверное, если нет АПИ и есть вероятность блокировки, то поставщик не сильно хочет, чтобы его продавали. во-вторых, не совсем понятна необходимость мультипоточности, если говорится, что парсинг может занять сутки. при таких сроках загрузка данных актуальна только роботами по расписанию, а не по запросу пользователя. а в случае с роботами, можно просто запускать их одновременно. причём если вынести исполнительные скрипты на разные сервера, то получится внутреннее распараллеливание. что в принципе реализуется и на php.
но если всё же требуется распараллеливание по запросу пользователя, то я бы посмотрел в сторону Node.js, как разделение непосредственно задачи на потоки, а ими уже бы запускал те же php-скрипты, потому что сам js не слишком приспособлен для программирования
если возможен python, то можно взять его multiprocessing и в несколько процессов запустить selenium
для проксирования можно натравить selenium на tor browser
у самого php с многопоточностью всё довольно печально
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Всем привет, никак не получается создать условие ,чтобы отловить ошибку ввода в строку букв вместо цифр
hashCode возвращает целочисленное int, которое характеризует объектГрубо говоря, если у объекта есть два целочисленных поля, то мы должны как-то...
Есть Activity и несколько Fragment которые открываются внутри этого активитиToolbar находится в активити
я сериализую объект KeyEvent, превращаю его в строку, а затем сохраняю это значение в бд Oracle, затем читаю строку из бд и пытаюсь десериализовать...