![]() |
|
Модераторы: Illuminaty |
![]()
|
|
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 50 Всего: 315 |
а не слишком ли вы раскатали губу, сэр? воруете, так ещё и качеством недовольны? |
|||
|
||||
| SelenIT |
|
|||
![]() баг форума ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3996 Регистрация: 17.10.2006 Где: Pale Blue Dot Репутация: 97 Всего: 401 |
Алгоритм парсинга произвольного HTML (в т.ч. с легально и нелегально незакрытыми и "не там закрытыми" тегами), максимально приближенный к "среднестатистическому" поведению браузеров, формализован стандарте HTML5. Есть его готовая реализация, которая используется в HTML5-валидаторе. Со страницей гугла этот валидатор, по-моему, справляется ;).
Только в XML-режиме (как application/xhtml+xml etc.). А вот таблицу в абзац — да, в некоторых случаях можно и в text/html (в IE7 и ниже — всегда, в IE8 и FF — только в Quirks mode). -------------------- Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму! |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: нет Всего: 142 |
SelenIT, за ссылку спасибо, порылся в спеке вроде есть то, что надо.
Валидатор не понадобится, мне не для того, чтобы корректные документы составлять, а для того, чтобы извлекать информацию с вебстраниц, при этом игнорируя максимум ошибок и чтобы всё работало под .Net Framework да ещё и по моим правилам А на счёт гуголя я написал потому, что как-то разбирал его поисковую страницу припомощи sgmlreader'а, он всё парсит в XML, а раньше в этой странице отсутствовал корневой элемент(HTML) а в XML это низзя и он разбирал элемент head, а всё остальное игнорировал. Из-за этого я и упомянул про гуголь. Сейчас у них там корневой элемент присутствует. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| SelenIT |
|
|||
![]() баг форума ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3996 Регистрация: 17.10.2006 Где: Pale Blue Dot Репутация: 97 Всего: 401 |
Там парсер вроде можно и отдельно от валидатора использовать, сам по себе он к ошибкам лоялен, просто валидатор эти ошибки еще и логирует. Плюс есть демо-реализация парсера на JS (вроде даже довольно шустрая;).
Еще нередко для таких задач юзают Tidy, но там, имхо, результат может сильнее отличаться от браузерного (сужу по поведению FF-овского HTML Validator-а, который в режиме Tidy тупо выбрасывает, например, пустые span-ы, часто важные для оформления). -------------------- Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму! |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: нет Всего: 142 |
Мне нужен инструмент написаный и работающий под .Net Framework. Если бы речь шла о каком угодно парсере, то думаю, что проблемы не было бы.
-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| SelenIT |
|
|||
![]() баг форума ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3996 Регистрация: 17.10.2006 Где: Pale Blue Dot Репутация: 97 Всего: 401 |
Понятно. Вот нагуглилась попытка реализации той спеки на .NET (правда, пока с припиской "код нерабочий", но, может, хотя бы Constants.cs пригодятся;)...
-------------------- Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму! |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: нет Всего: 142 |
Да вроде в спеке описано то, что надо. А из этого модуля ограничений можно только список элементов получить, но не описание признаков закрытия.
Вот сопсно, то что надо http://dev.w3.org/html5/spec/Overview.html#optional-tags -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| HARDMID |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 10.12.2007 Репутация: нет Всего: нет |
bars80080,
[оффтоп]: Во-первых, не ворую, а публикую материалы с указанием источника с письменного согласия редакции сайта. Во-вторых, заверстайте-ка мне, пожалуйста, пяток статей, в каждой из которых минимум по две разношерстных таблицы не менее чем с пятью столбцами и двадцатью строками. За полчасика. И не говорите, что если есть готовое решение, то кто-то станет его вновь изобретать. Иначе бы не было и этого форума.[/оффтоп] ))) |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 50 Всего: 315 |
есть готовое решение. находится по сочетанию xml+rss договариваетесь с редакцией, они выделяют вам канал новостей, вы пишете парсящий скрипт за полчаса и не испытываете абсолютно никаких проблем с чуждой вёрсткой, ибо она отсутствует как таковая |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Вёрстка веб-сайтов | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |