powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / хочу странного от xpath и парсинга html
15 сообщений из 15, страница 1 из 1
хочу странного от xpath и парсинга html
    #37075422
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Допустим, есть такой не особо валидный xhtml :
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
<body>
<table>
  <tr>
   <td>
    <div align="left" class="coolleft">
     left text
    </div>
    <div class="coolleft" id="data">
        text text text
    </div>
    <div class="last">
        text text text
    </div>
   
this <br>
is <br>
the <br>
world <br>
we live in!<br>

    </td>
  </tr>
</table>
</body>
Так уж получилось, что подобные конструкции используются на реальных сайтах. Браузерами они отображаются без проблем.
информация, которая мне нужна - допустим, слово "world" или весь текст,но не внутри <div> - это "украшения".

Каким образом написать такое выражение, которое это слово достанет?
вопроса на самом деле два :
1. непонятно как адресовать текст в общем случае между незакрытыми одиночными тегами типа <br>
2. задачу получения информации более-менее облегчила бы возможность выдернуть текст внутри таблицы
/html/body/table/tbody/tr/td , но не заходя в <div>

я использую perl-реализацию xpath и dom-парсинга.
...
Рейтинг: 0 / 0
хочу странного от xpath и парсинга html
    #37075448
refreg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netwind,

К невалидному XML невозможно применить ни XPath, ни XSL
...
Рейтинг: 0 / 0
хочу странного от xpath и парсинга html
    #37075455
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
refreg, но в большинстве случаев это получается весьма успешно. dom-парсер сам закрывает теги и тд.
Хотя бы частично можно облегчить эти задачи?
...
Рейтинг: 0 / 0
хочу странного от xpath и парсинга html
    #37075489
refreg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netwindrefreg, но в большинстве случаев это получается весьма успешно. dom-парсер сам закрывает теги и тд.
Хотя бы частично можно облегчить эти задачи?Пример такого парсера? Браузер не в счет...

В твоем примере, надо просто <br> на <br/> заменить - и будет валидный XML
...
Рейтинг: 0 / 0
хочу странного от xpath и парсинга html
    #37075512
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
refreg, ну вот 9902487 .
там если не закрыть, то все равно все отлично спарсится. это фокус такой для анализа html и довольно старый. xpath туда прикрутили потом.

Окей, допустим единичный тег преобразуем :
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
<html>
 <body>
   this <br/>
   is <br/>
   the <br/>
   world <br/>
   we live in!<br/>
 </body>
</html>
как должно выглядеть выражение xpath, которое достанет одно конкретное четвертое по порядку слово?
...
Рейтинг: 0 / 0
хочу странного от xpath и парсинга html
    #37075539
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netwindкак должно выглядеть выражение xpath, которое достанет одно конкретное четвертое по порядку слово?//body/text()[3]
...
Рейтинг: 0 / 0
хочу странного от xpath и парсинга html
    #37075563
refreg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще так можно, смотря какая задача

Код: plaintext
select="/html/body/node()[7]"
...
Рейтинг: 0 / 0
хочу странного от xpath и парсинга html
    #37075598
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
классно, спасибо.
Этот вопрос как то не лежит на поверхности в руководствах по xpath, так как все работают с красивым вложенным xml.
...
Рейтинг: 0 / 0
хочу странного от xpath и парсинга html
    #37075606
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
refregЕще так можно, смотря какая задача
Код: plaintext
select="/html/body/node()[7]"

а вот это уже к парсингу html мало применимо.
...
Рейтинг: 0 / 0
хочу странного от xpath и парсинга html
    #37089641
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
refregnetwindrefreg, но в большинстве случаев это получается весьма успешно. dom-парсер сам закрывает теги и тд.
Хотя бы частично можно облегчить эти задачи?Пример такого парсера? Браузер не в счет...Virtuoso Open Source. Парсер и валидирует XML, и лечит HTML, XPath/XQuery/XSLT тоже есть...
...
Рейтинг: 0 / 0
хочу странного от xpath и парсинга html
    #37089735
refreg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iv_an_rurefregпропущено...
Пример такого парсера? Браузер не в счет...Virtuoso Open Source. Парсер и валидирует XML, и лечит HTML, XPath/XQuery/XSLT тоже есть...Да не нужен мне список ненужных программ. Я не сомневаюсь, что есть лечилки...
Есть требование к XML-процессору, сертифицированные требования. Если XML-процессор не выполняет эти требования, то это не XML-процессор!!!
Если бы автор использовал лечилку, то он не задавал бы вопрос номер 1.

У вас получается примерно следующее:
Вопрос. Как узнать время с помощью калькулятора?
Ответ. Очень просто - у меня есть калькулятор с часами...
...
Рейтинг: 0 / 0
хочу странного от xpath и парсинга html
    #37089920
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
refreg, расслабься, он просто их продает :)
...
Рейтинг: 0 / 0
хочу странного от xpath и парсинга html
    #37091707
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netwindrefreg, расслабься, он просто их продает :)Угу. Продаю. Virtuoso Open Source . wget ... ; configure ; make ; make install . Или yum install virtuoso .
...
Рейтинг: 0 / 0
хочу странного от xpath и парсинга html
    #37091742
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iv_an_ru, их , а не конкретного его (парсер) - другие продукты virtuoso.
...
Рейтинг: 0 / 0
хочу странного от xpath и парсинга html
    #37091794
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netwind,

В России? :) Кому?
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / хочу странного от xpath и парсинга html
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]