- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году 36,9% всех DDoS-атак пришлось на сферу финансов
А 24,9% – на сегмент электронной коммерции
Оксана Мамчуева
Как снизить ДРР до 4,38% и повысить продажи с помощью VK Рекламы
Для интернет-магазина инженерных систем
Мария Лосева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Всем привет, есть свой плагин для WP, который парсит кое-какие данные. Сейчас страниц около 100, но дальше будет больше. Планирую запускать через cron. Протестировал на нескольких URL, но вот как парсить большое количество, чтобы не забанили IP и скрипт не падал? Подскажите, ставить паузу после каждого URL? Тогда скрипт может долго выполняться. Может есть еще какой-то способ?
100 страниц чего? одного сайта? разных? как часто?
кто должен забанить IP?
Dinozavr, 100 разных страниц одного сайта. Скрипт запускаться будет раз в день. Когда-то парсил другой сайт и мой IP забанили, походу за частые запросы на сайт. Скрипт просто получал пустую страницу в ответ, а в браузере контент был (скрипт был на хостинге).
100 разных страниц одного сайта
Да никак. Как только владелец просечет, что его парсят - тут же и забанит ип.
Ну, если конечно просечет, если он проверяет уникальность периодически
t1mkke, как вариант - прокси. но это вечная игра в кошки-мышки. во-первых, он вас уже знает, во-вторых всегда может найти по своему контенту
если крон и не критично быстро получать, делайте задержки и всё.
99% решит проблему.
sleep(1); // и нет проблем
Список урлов в базу данных, в таблице три поля - ID (primary key), url и date
Выбрали 10 урлов у которых date < time() - 60*60*24, спарсили, обновили у них date на текущее время. Парсер запускать по крону раз в 5-10 минут без остановки. Если парсить нечего - нагрузку он не создаст.
если крон и не критично быстро получать, делайте задержки и всё.
99% решит проблему.
sleep(1); // и нет проблем
Скрипт не упадет так? Я просто с PHP мало знаком, знаю, что при долгом выполнении может падать.
Список урлов в базу данных, в таблице три поля - ID (primary key), url и date
Выбрали 10 урлов у которых date < time() - 60*60*24, спарсили, обновили у них date на текущее время. Парсер запускать по крону раз в 5-10 минут без остановки. Если парсить нечего - нагрузку он не создаст.
Только об этом подумал :) Как раз есть updated date в базе. Спасибо.
Я просто с PHP мало знаком, знаю, что при долгом выполнении может падать.
set_time_limit(0)
set_time_limit(0)
Можно уткнуться в таймаут nginx
Можно уткнуться в таймаут nginx
Задача будет запускаться на крон.
Можно наткнуться на лимит времени крона у хостера.