URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 2815
[ Назад ]

Исходное сообщение
"Разбор HTML и сохранение в виде форматированного текста"

Отправлено Nichls , 11-Ноя-04 14:28 
Добрый день.
Не подскажите, в каком направлении покапать, чтобы решить такую задачу.

Есть HTML страница, в которой есть примерно такой код, которой выглядит приблизительно так:

<table border="0" cellpadding="3" cellspacing="1" width="100%">
<tbody>
     <tr>
      <th>Поле 1</th>
      <th>Поле 2</a></th>
      <th>Поле 3</a></th>
      <th>Поле 4</a></th>
      <th>Поле 5</a></th>
      <th>Поле 6</a></th>
      <th>Поле 7</a></th>
     </tr>
     <tr>
        <td class="row2" width="1%"> 1</td>
        <td class="row2" width="1%"> Данные</td>
        <td class="row2" width="1%"> Данные</td>
        <td class="row2" width="1%"> Данные</td>
        <td class="row2" width="1%"> Данные</td>
         <td class="row2" width="1%"> Данные</td>
         <td class="row2" width="1%"> Данные</td>
    </tr>
    <tr>
        <td class="row1" width="1%"> 2</td>
         <td class="row1" width="1%"> Данные</td>
         <td class="row1" width="1%"> Данные</td>
        <td class="row1" width="1%"> Данные</td>
        <td class="row1" width="1%"> Данные</td>
         <td class="row1" width="1%"> Данные</td>
         <td class="row1" width="1%"> Данные</td>
</tbody>
</table>

Как можно это все перевести в текстовый файл с сохранением форматирования.
Например, чтобы на выходе было примерно так: (--- для наглядности)

Поле 1 Поле 2  Поле 3  Поле 4  Поле 5  Поле 6  Поле 7
------------------------------------------------------
1     Данные  Данные  Данные  Данные  Данные  Данные
2     Данные  Данные  Данные  Данные  Данные  Данные

Все остальное со страницы не нужно.

Подскажите, что нужно использовать и что почитать.

Большое спасибо.

С Уважением, Александр.


Содержание

Сообщения в этом обсуждении
"Разбор HTML и сохранение в виде форматированного текста"
Отправлено Lucky , 12-Ноя-04 07:09 
>Добрый день.
>Не подскажите, в каком направлении покапать, чтобы решить такую задачу.
Регулярные выражения на Perl'e
preg_match_all какой нибудь


"Разбор HTML и сохранение в виде форматированного текста"
Отправлено dev , 12-Ноя-04 11:10 
Пропустить через lynx

"Разбор HTML и сохранение в виде форматированного текста"
Отправлено Nichls , 15-Ноя-04 10:52 
>Пропустить через lynx

Я наверно не правильно выразился.
Задачку надо решить следующую.

Есть HTML страница на www.lalalalala.ru? отображающая данные в виде таблицы, которая периодически обновляется.

Так вот, хочется через определенный интервал времени забирать от туда данные в нормальном текстовом виде.

Что можете посоветовать использовать и что почитать.


"Разбор HTML и сохранение в виде форматированного текста"
Отправлено dev , 15-Ноя-04 12:35 
>Так вот, хочется через определенный интервал времени забирать от туда данные в
>нормальном текстовом виде.

Ну так я и говорю, зайди на эту страничку lynx'ом и сбрось его вывод в файл:
lynx -dump http://www.subir.com/lynx.html > newpage.txt



"Разбор HTML и сохранение в виде форматированного текста"
Отправлено Nichls , 14-Дек-04 19:58 
>>Так вот, хочется через определенный интервал времени забирать от туда данные в
>>нормальном текстовом виде.
>
>Ну так я и говорю, зайди на эту страничку lynx'ом и сбрось
>его вывод в файл:
>lynx -dump http://www.subir.com/lynx.html > newpage.txt

Не совсем то, что хотелось бы. Нужно, чтобы это было, ну чтоли, красивее. Предпологаю, что можно через Perl делать, но не знаю, в каком направлении копать (не узучал его). И было бы куда лучше, если все это по Cron'у делалось.


"Разбор HTML и сохранение в виде форматированного текста"
Отправлено kD , 15-Дек-04 18:32 
Если ты не владеешь Perl, то прежде чем ставить эту задачу почитай хотябы про него: как с базой работать, как доставать контент html странички по ссылке и тп, а потом, когда разберешься с азами приступай к своей задаче.

Что касается сабжа, то
Используй регулярные выражения (читай про оных полно написано).
Именно Perl использовать не обязательно, можно и на PHP сделать и на С, но принцип один - нужно будет использовать регулярные выражения. На PHP все попроще, чем на Perl, но это кому как удобнее конечно.

Когда создашь скрипт и он будет работать повесишь его на крон - это последняя задача в твоем списке.

Удачи.