|
|
|
| Привет всем,
Появилась идея написания парсера, который бы ходил по страницам.
Примерный механизм работы: Парсер загружает адрес сайта, на нем 10 страниц. В начале парсер парсит первую страницу, собирает на ней нужные данные, а потом, по окончании её парсинга, переходит на вторую и.т.д
Как можно такое реализовать? (переход по страницам) :| | |
|
|
|
|
|
|
|
для: interest_quastion
(02.12.2008 в 21:54)
| | >...В начале парсер парсит первую страницу...
это Вы как собираетесь реализовать? | |
|
|
|
|
|
|
|
для: ddhvvn
(02.12.2008 в 22:08)
| | Вот и я о том же, как дать понять парсеру, что это именно первая страница, и что нужно идти дальше ) | |
|
|
|
|
|
|
|
для: ddhvvn
(02.12.2008 в 22:08)
| | >Вот и я о том же, как дать понять парсеру, что это именно первая страница,
например сделать так
file_get_contents("http://yandex.ru")
И не важно какое имя имеет первая страница.
А дальше, уж сами. | |
|
|
|
|
|
|
|
для: AcidTrash
(02.12.2008 в 22:34)
| | Спасибо конечно, но это я знаю, меня интересует механизм перехода по страницам. | |
|
|
|
|
|
|
|
для: interest_quastion
(02.12.2008 в 22:38)
| | Возможно, считывать все ссылки с страницы например через РГ, а дальше по ним переходить на другие страницы считывать, что надо и тд. | |
|
|
|
|
|
|
|
для: AcidTrash
(02.12.2008 в 22:45)
| | Позвольте поинтересоваться, а что такое "РГ" ? | |
|
|
|
|
|
|
|
для: interest_quastion
(02.12.2008 в 22:47)
| | Регулярные выражения.
P.S. Думаю готового решения как это сделать, никто вам не напишет, так как это очень гемморойно.
PPS спросите у Яндекса или Гугла, как у них поисковые роботы написаны. :) | |
|
|
|
|
|
|
|
для: AcidTrash
(02.12.2008 в 22:51)
| | Т.е такое не стоит делать на PHP?
Странно, мне казалось, что на пхп это можно реализовать без особых заморочек. | |
|
|
|
|
|
|
|
для: interest_quastion
(02.12.2008 в 23:29)
| | хм... очень просто - использовать рекурсию
<?php
$start_url = "http://temp";
// активная страница
$pIndex = 1;
// функция парсинга
function parser($start_url){
global $pIndex;
// парсим страницу
///////////////////////////////////
// Ищем список страниц и открываем следующую после активной, если она есть
// Индексы массива $links - номера страни, значение - url
if(!empty($links[$pIndex+1])){
$pIndex++;
parser($links[$pIndex]);
}
}
?>
|
| |
|
|
|
|
|
|
|
для: interest_quastion
(02.12.2008 в 21:54)
| | Смотрите здесь
На основе этого може сделаете то, что Вам нужно. | |
|
|
|