X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

5 страниц V   1 2 3 4 5 >
Открыть тему
Тема закрыта
> Парсер Lenta.Ru, основанный на регулярных выражениях.
ParavoZ
ParavoZ
Topic Starter сообщение 1.8.2010, 0:08; Ответить: ParavoZ
Сообщение #1


<?php
$vip = file_get_contents("http://lenta.ru/news/2010/07/30/"); // 
$n = preg_match_all('!<span class=title><a href=(.*)>.*</a></span></p>!i', $vip, $result);
if($n)
{
for($a=0;$a<$n;$a++)
{
$page = file_get_contents("http://lenta.ru".$result[1][$a]);
$page = preg_replace("!<a.*>!sU", " " , $page);
$page = preg_replace("!</a>!sU", " " , $page);
$regex = preg_match_all('!<H2>(.*)</H2>.*</TABLE>(.*)<P class=links>!isU', $page, $itog);
if($regex)
{

echo $itog[1][0].'<br>';
echo $itog[2][0].'<br>';
};
};

};
?>

с 1 парсинга - примерно 178 килобайт текстовки качественного новостного копипаста, который не парсился особо ранее.


Что нужно менять в скрипте:

$vip = file_get_contents("http://lenta.ru/news/2010/07/30/"); //


меняем урл http://lenta.ru/news/2010/07/30/ на страницы вида

http://lenta.ru/news/2010/07/15/ - парсим все новости 15 числа.

http://lenta.ru/sport/2010/07/28/ - парсим все новости спортивного раздела за 28 июля.

и так далее.




use.


Поблагодарили: (8)
9
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
simpliex
simpliex
сообщение 1.8.2010, 0:41; Ответить: simpliex
Сообщение #2


А куда и в каком формате он сохраняет?


--------------------
Осторожно! Должник.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ParavoZ
ParavoZ
Topic Starter сообщение 1.8.2010, 0:45; Ответить: ParavoZ
Сообщение #3


simpliex, прямо в браузер.
Сохрани в файл пхп и врубай на хостинге
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
valeros
valeros
сообщение 1.8.2010, 0:50; Ответить: valeros
Сообщение #4


Просто при больших объемах,не удобно копипастить,вот если бы сразу в txt файл - другое дело.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Cttr
Cttr
сообщение 1.8.2010, 2:06; Ответить: Cttr
Сообщение #5


Прикрутил бы лучше импорт урлов и экспорт исходной статьи + почистить от ссылок - в общем разгон есть куда брать smile.gif
Кстати у ленты есть XML канал, с ним лучше дружить.

Поддержу немного ТС:

- снят лимит, ибо 30 сек не хватает
- добавлена форма для ввода url
- добавлена запись в файл


Пользуйтесь на здоровье, друзья.

<?php

    ini_set ('max_execution_time', 0);
    
    if (! $_POST) {
    
        echo '<form method="post">URL: <input type="text" name="url" style="width: 200px"> <input type="submit" values="парсить"></form>';
        
    } else {
    
        $vip = file_get_contents ($_POST['url']);
        $n = preg_match_all ('!<span class=title><a href=(.*)>.*</a></span></p>!i', $vip, $result);
        
        if ($n) {
            for($a=0; $a < $n; $a++) {
                $page = file_get_contents ("http://lenta.ru". $result[1][$a]);
                $page = preg_replace ("!<a.*>!sU", ' ', $page);
                $page = str_replace ('</a>', ' ', $page);
                $regex = preg_match_all ('!<H2>(.*)</H2>.*</TABLE>(.*)<P class=links>!isU', $page, $itog, PREG_SET_ORDER);
                
                if ($regex) {                    
                    $file = fopen ('text_' .$a. '.txt', 'a');
                    fwrite ($file, $itog[0][1] ."\n". str_replace ('<p>', '', $itog[0][2]));
                }
            }
        }
    }

?>


Сообщение отредактировал Cttr - 1.8.2010, 2:15


Поблагодарили: (3)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
burusha
burusha
сообщение 1.8.2010, 9:36; Ответить: burusha
Сообщение #6


На сколько я знаю, php процессы ограничены по времени, поэтому и нужен лимит. Зачем же его тогда снимать?
Или я ошибаюсь?


--------------------
Забанен за негативное отношение к форуму и его администрации.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Cttr
Cttr
сообщение 1.8.2010, 21:06; Ответить: Cttr
Сообщение #7


(burusha @ 1.8.2010, 8:36) *
Или я ошибаюсь?

Дефолтный лимит 30 секунд. Скрипт, если не успел завершить операцию, отработал 30 секунд и вылетает с фаталом. Мой канал интернета лично не позволяет за 30 сек спарсить 120 новостей, к примеру. Вот и все обьяснение

Сообщение отредактировал Cttr - 1.8.2010, 21:14
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Gad3000
Gad3000
сообщение 2.8.2010, 23:24; Ответить: Gad3000
Сообщение #8


А откуда потом брать файл со спарсенным? blush.gif


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Cttr
Cttr
сообщение 3.8.2010, 3:39; Ответить: Cttr
Сообщение #9


(Gad3000 @ 2.8.2010, 22:24) *
А откуда потом брать файл со спарсенным?

А потестировать ни-ни? Кстати там не один файл, а на каждую новость свой файл. Создает в ту же папку где и лежит скрипт.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
centurion
centurion
сообщение 3.8.2010, 9:44; Ответить: centurion
Сообщение #10


(Cttr @ 3.8.2010, 3:39) *
А потестировать ни-ни? Кстати там не один файл, а на каждую новость свой файл. Создает в ту же папку где и лежит скрипт.

Кинул 222.php в корень.
Ни чего не парсит.

И из папки не парсит.


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
5 страниц V   1 2 3 4 5 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыA-Parser 1.1 - продвинутый парсер ПС, кейвордов, контента, показателей, 70+ парсеров.
352 Forbidden 278222 21.3.2024, 14:38
автор: AParser_Support
Открытая тема (нет новых ответов) Бесплатный парсер бот в Телеграм - [Parser Pro]
5 Parser_Pro 3310 27.1.2024, 16:12
автор: Parser_Pro
Открытая тема (нет новых ответов) WebArchiveMaster - парсер Вебархива
Добыча контента из ВебАрхива
16 footashes 12241 23.11.2022, 16:36
автор: kuz999
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлы⚡ AvitoSmart - быстрый парсер новых объявлений на Авито на запросах
Представляю парсер для [b]Zennoposter[/b]'a или [b]Zennobox[/b]
0 akcium 1250 19.11.2022, 13:05
автор: akcium
Открытая тема (нет новых ответов) Tubes Clip One - парсер тубов
21 xoopw 20775 16.4.2021, 17:30
автор: xoopw


 



RSS Текстовая версия Сейчас: 29.3.2024, 3:17
Дизайн