LINUX.ORG.RU

Релиз HTML-парсера MyHTML

 , myhtml


1

6

После нескольких месяцев разработки увидел свет первый релиз быстрого и самодостаточного HTML-парсера MyHTML. Код написан на языке Си и распространяется под лицензией GNU LGPL v2.1.

Автор планирует в скором времени закончить разработку самодостаточного парсера CSS под названием MyCSS, нового HTML-рендерера, обработчика JavaScript и, возможно, других интересных штук.

В ходе тестов MyHTML уже обогнал парсер HTML из Servo — html5ever.

>>> Подробности

anonymous

Проверено: Klymedy ()
Последнее исправление: Klymedy (всего исправлений: 3)
Ответ на: комментарий от SZT

А потом хостер/счетчик/провайдер добавляют своего «грязного» коду на страницу и твой сайт никому не виден. А ты об этом возможно и не догадываешься

makoven ★★★★★
()

“Внешние зависимости” — это “external dependencies”, а не “outside”. Ну а в общем уровень английского хоть и не “MGIMO finished?”, но всё-таки оставляет желать лучшего. Такое ощущение, что README и страничку на github.io писали разные люди.

theNamelessOne ★★★★★
()
Ответ на: комментарий от SZT

Надо попросту не показывать невалидные сайты (т.е. при первом же затыке прекращать парсинг и написать что-то вроде «этот сайт с ошбиками и показывать мы его не будем»).

Фиг бы ты что-нибудь написал здесь тогда.

anonymous
()

MyHTML

MyCSS

Мне тут звонят из Оракла, интересуются не планируете ли вы изваять что-нибудь связанное с SQL...

anonymous
()
Ответ на: комментарий от anonymous

Если бы все распространенные браузеры отбрасывали html-код с ошибками, здесь бы их попросту не было

SZT ★★★★★
()
Ответ на: комментарий от SZT

С чего ты взял? Скорее ЛОРа не было бы. Его вон сколько народу улучшает. Но не могут они без ошибок. Руки не оттуда растут.

anonymous
()
Ответ на: комментарий от anonymous

А, ну да. В какой-нибудь параллельной вселенной, где компиляторы C умели бы компилировать код с синтаксическими ошибками, автоматически исправляя код на этапе компиляции(при этом сам файл с исходным кодом оставался бы неизменным), кто-нибудь наверняка бы заявил, что вот если бы C компиляторы строго проверяли синтаксис и отказывались компилировать код с ошибками, никто бы не написал ядро Linux, а его вон скольк народу улучшают.

SZT ★★★★★
()
Ответ на: комментарий от SZT

В какой-нибудь параллельной вселенной, где компиляторы C умели бы компилировать код с синтаксическими ошибками

Я не уверен про Си, но как минимум некоторые компиляторы PL/I умел компилировать код с синтаксическими ошибками.

tailgunner ★★★★★
()
Ответ на: комментарий от anonymous

Я в курсе. А юзать плюсы - религия не позволяет?

Kroz ★★★★★
()
Ответ на: комментарий от Weres

Автор библиотеки любит си. Автор библиотеки любит си.

Короче, лень...
Ладно. Не самая большая беда...

Kroz ★★★★★
()
Ответ на: комментарий от SZT

Если бы твой метод работал, вендекапец уже давно бы наступил.

hobbit ★★★★★
()
Ответ на: комментарий от umren

в итоге победили браузеры которые нормально показывают кривой хтмл.

Нет такого «нормально показывать кривоту». Есть некие эвристики, позволяющие ДОГАДЫВАТЬСЯ как примерно отображать, но нельзя говорить, что сайт 100% корректно отобразился. И половина вины за эту кривоту лежит на пердунах из W3C, которые ни черта не понимают, зачем нужен гипертекст. HTML - это айтишный урод, брат такого же ментального урода php. И это грустно, потому что этот парад уродов принял угрожающие масштабы.

matumba ★★★★★
()

Уже есть gumbo-parser.

В комментариях на хабре автор объяснил, почему ему не понравились внутренности gumbo-parser, но не сделал сравнения, чем MyHTML лучше gumbo-parser для пользователя. Ни сравнения, ни тестов производительности нет. Так что преимущества MyHTML неочевидны пока что.

MyLittleGentoo
()
Ответ на: комментарий от RazrFalcon

Если с этим возникают какие-то проблемы (для нормальных языков есть готовые решения), то делают сишную обертку вокруг плюсовой реализации

annulen ★★★★★
()
Ответ на: комментарий от uin

Офигенная вещь, особенно если рассматривать в рамках фреймворка WPF. Невероятно красивый и элегантно реализованный паттерн MVVM. После него смотришь на гипертекст и динамическое изменение дом элементов жаваскриптом как на говно.

nikolnik ★★★
()
Ответ на: комментарий от nikolnik
<Button>
  <Button.Content>
     <Image Source="Images/OK.png" Width="50" Height="50" />
  </Button.Content>
</Button>


В принципе в рамках продуктов MS - это пожалуйста, но ратовать за то чтоб этот продукт надругания над xml (и с ним явно не совместимый) стал в качестве стандарта разметки веб страниц ... это как то феерично.

Насчет элегантности тут то же масса вопросов - задумка мне лично не понятна и вещи вроде <Button.Content> выдают полное не понимание создателями сути xml.

uin ★★★
()
Ответ на: комментарий от uin

и с ним явно не совместимый

Имеется в виду чувствительность к регистру, если она присутствует.

uin ★★★
()
Ответ на: комментарий от RazrFalcon

На плюсах не сделать нормальные биндинги для других языков.

Можно пару ссылок по теме?

P. S. И, да, это к данному проекту не сильно относится....

Kroz ★★★★★
()
Ответ на: комментарий от SZT

Ну так пусть лор переходит на XHTML, с Content-Type:'application/xhtml+xml'.
Обозреватели миленько прекратят обрабатывать страницу если где-то допущена синтаксическая ошибка. Беда только в том что в таком режиме обозреватели перестают показывать страницу по мере её прогрузки переключаясь на принцип «всё или ничего», но он обходится с помощью ajax.

EvilFox ★★
()
Последнее исправление: EvilFox (всего исправлений: 2)
Ответ на: комментарий от Kroz

Ссылок нет. Есть личная статистика. Единственный известный мне биндинг к плюсам - это OpenCv. У Qt тоже есть биндинги к питону, но их пилят уже 100 лет, и конца и края нет. Других примеров вообще не припомню. Если нужна интеграция с другими языками - С. Именно поэтому, многие переходят с С на Rust, ибо можно без боли переписывать узкие места во всяких там питонах.

RazrFalcon ★★★★★
()
Ответ на: комментарий от anonymous

Могут. Просто забивают (или не замечают) так как и так работает чё париться то.

anonymous
()
Ответ на: комментарий от anonymous

Нет, абсолютно валидное использование xml

To XML, there's no significance of a period in an element's name. a, a., a.b, and a.b.c are all legal (and unique) element names.

anonymous
()
Ответ на: комментарий от tailgunner

TeX умеет. Типа получи кусок говна и пойми, где ошибка. И это правильно.

tereshchenko ★★
()

Интересно, а из каких соображений лицензия не последней версии? В остальном - успехов проекту, начинание полезное.

zabbal ★★★★★
()
Ответ на: комментарий от anonymous

А автору-то это нахрена? Он же может тупо проприетарную лицензию на свой же код продавать - во всяком случае пока контрибьютор один.

zabbal ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.