Я пишу сценарий очистки веб-страниц в Ruby, который открывает веб-сайт подержанной машины, ищет марку / модель автомобиля, просматривает страницы результатов и затем просматривает данные на каждой странице.
Проблема, с которой я столкнулся, заключается в том, что я не обязательно знаю максимальное количество страниц в начале, и только когда я перебираю ближе к последним нескольким известным страницам, нумерация страниц увеличивается и показывает больше страниц.
Я определил cleanpages
как массив и заполнил его, насколько мне известно, доступными страницами при первом открытии сайта. Затем я использую cleanpages.each do
для перебора этих «страниц». Каждый раз, когда я нахожусь на новой странице, я добавляю все известные страницы обратно в cleanpages
и затем запускаю cleanpages.uniq
, чтобы удалить дубликаты. Кажется, проблема в том, что cleanpages.each do
повторяется только столько раз, сколько его исходная длина.
Можно ли сделать так, чтобы в цикле each do
я увеличивал количество повторений, которое он будет повторять?