Задержка цикла foreach и while на 30 секунд php

У меня есть приложение для записки Google по некоторым ключевым словам. В таблице у меня есть список ключевых слов. Это логика, которую я использовал для удаления каждого ключевого слова с другим прокси.

foreach ($keywords as $keyword) {
   $response = false;
   while ($response == false) {
     try {
       ScrapGoogle();
     } catch (Exception $e) {
       $response = false;
       // If false, try another proxy. I didn't included that block code here
     }
   }
}

Из-за этой логики я иногда получаю ошибку 503, но при ручном тестировании этого прокси (из веб-браузера) поиск Google работает. Это означает, что мне нужно остановить цикл foreach и / или while на 30 секунд. Я попытался добавить sleep () в конец обоих циклов, но мне не стало лучше. Цикл подождите 30 секунд, а затем выполните все проверки одновременно.

Может быть проблема в самом ScrapGoogle()? Вы уверены, что прокси переключается с вашим сценарием так же, как когда вы делаете это вручную? Вы можете каждый раз распечатывать прокси-сервер, к которому вы подключены, в консоли или журнале.

Ryan Kozak 01.07.2018 18:49

Нет, поскольку у меня есть система журналов, я записываю каждый запрос в базу данных, поэтому я знаю, что скрипт работает, потому что есть правильное переключение прокси. Я даже добавил уникальный прокси для каждого ключевого слова. Единственная проблема, с которой я сталкиваюсь, заключается в том, что некоторые из этих циклов не работают правильно и получают результаты для всех ключевых слов одновременно, или они очень быстро проверяют

Zeex Marsae 01.07.2018 22:20
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
2
224
0

Другие вопросы по теме