Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
91 / 91 / 13
Регистрация: 14.07.2012
Сообщений: 539

Парсинг неизвестного количества страниц

25.01.2013, 16:54. Показов 1343. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здрасти всем.

Тема. Подскажите кто делал?
Исходные данные.
Сайт site.ru/categoria1/&start=30
Каждая страница выводится прибавлением в старт 30 тоесть следующая страница будет site.ru/categoria1/&start=60
Самое простое решение вижу сделать в цикле с for и указать скажем 1000 циклов но это как то кощунственно. Также плохо тем, что если в одной группе 1 страница, а в другой 10000 загрузка компа по времени будет офигенной(не то слово). Вижу самый лучший вариант:
1. Некий цикл
2. Качаю страницу и парсю
3. Если в странице есть контент который мне нужен то заношу в базу в противном случае цикл рвется.

Как это можно организовать помогите плиз.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.01.2013, 16:54
Ответы с готовыми решениями:

Парсинг страниц
нужно спарсить страницу Как пользоваться preg_match?, не понимаю этих иероглифов "|<+>(.*)</+>|U" Как например...

Парсинг нескольких страниц
Здравствуйте, господа. Недавно по необходимости стал заниматься изучением php. В общем делаю онлайн конвертер валют. Данные берутся с...

Мультикурл парсинг страниц, после авторизации
Собственно вопрос. Как сделать правильно парсинг 3х страниц. $init = ; $result = ; //$user - из другой таблицы $mh =...

4
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
25.01.2013, 17:30
Для людей (для которых изначально предназначена страница) на странице всегда выводится ссылка как минимум на одну следующую страницу, если она есть. Надо найти эту ссылку.
0
91 / 91 / 13
Регистрация: 14.07.2012
Сообщений: 539
25.01.2013, 17:45  [ТС]
Vovan-VE, наверно сп_здану, что то неграмотное но применять принцип типа рекурсии? Или как у меня опыт програмирования маленький.
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
26.01.2013, 10:55
  1. {Максимальный известный номер страницы} = 1.
  2. {Текущая страница} = 1.
  3. Парсите {текущую страницу}
    1. собираете нужную инфу
    2. ищете ссылки на следующие страницы. Если максимальный номер из найденных больше, чем {Максимальный известный номер страницы}, то кладёте его туда.
  4. ++{Текущая страница}
  5. если {Текущая страница} < {Максимальный известный номер страницы}, то переходите к п.3
  6. готово.
1
91 / 91 / 13
Регистрация: 14.07.2012
Сообщений: 539
26.01.2013, 11:10  [ТС]
Цитата Сообщение от Vovan-VE Посмотреть сообщение
{Максимальный известный номер страницы}
Вот этот "Х" и самое затруднение. Я уже нашел решение использовать рекурсию с алгоритмом как Вы и написали. Спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.01.2013, 11:10
Помогаю со студенческими работами здесь

Универсальный обходчик веб страниц (парсинг simple_html_dom)
Это тема моей курсовой работы. Задача получить на выходе инструмент, при помощи которого можно будет собирать данные с интересующих нас...

Парсинг большого количества страниц
Есть такой вопрос..возможно ли парсить одновременно около 1000 страниц?

Разбиение на страницы с переходом по номерам страниц, с отображением полного количества страниц
Имеется таблица (MySQL) содержащая 3 поля: id, data, summa Таблица имеет около 100 записей. Html страница может отображать 10...

Парсинг определённых страниц каталога
Здравствуйте. Написал простейший парсер, используя curl+simple_html_dom. Сначала он берёт страницу раздела сайта (в моём случае,...

Парсинг количества страниц
Учусь парсить. Хочу получить количество страниц на http://www.e1.ru/afisha/events/gastroli (их 7). using(var Request = new...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru