HTML в Markdown: превратите сохранённую страницу в удобный документ
Откройте любой .html файл, который вы сохранили из Интернета в текстовом редакторе, и первое, что вы
обратите внимание, как мало это в статье. Полторы тысячи строк навигационных меню, баннеров cookie, отслеживания
пиксели, встроенные <style> блоки и <div class="wrapper-outer-container">
вложенность в шесть уровней, охватывающая примерно сорок абзацев реального текста. Вставьте это в чат
помощник, и вы сожжете большую часть своего контекстного окна в разметке, которая ничего не значит для модели.
Преобразование HTML для Markdown переворачивает это соотношение. Теги, несущие смысл, переводятся; теги, которые содержат только макет, удаляются. В результате получается документ той же формы, что и исходная страница — заголовки, списки, таблицы, ссылки, блоки кода — примерно в десятой части символов. Загрузите файл выше, и он будет у вас через пару секунд. Бесплатно, без регистрации, ничего не хранится.
Как HTML-теги сопоставляются с Markdown
Markdown был разработан как сокращение для подмножества HTML, поэтому большая часть перевода близка к один в один. Знание сопоставления говорит вам, чего именно ожидать в результате:
<h1>через<h6>стать#через######. Глубина курса сохраняется в буквальном смысле, что имеет большее значение, чем кажется — модель, которую просят обобщить раздел за разделом, должна знать, какие заголовки являются родственными.<ul>,<ol>и вложенный<li>стать рывком и нумерационные списки с отступами, несущими вложенность.<table>становится таблицей каналов при условии, что таблица является реальной таблицей данных. Используемые таблицы исключительно для макета — все еще распространено в HTML электронной почты и на старых сайтах — преобразовать во что-то структурно действительный, но семантически бесполезный.<a href>становится[text](url), поэтому пункты назначения сохраняются, а не оставив вас с потерянным якорным текстом.<code>и<pre>станут обратными кавычками и огражденными блоками. Это Единственная главная причина, по которой разработчики конвертируют страницы документации таким образом — фрагменты остаются фрагментами.<strong>,<em>,<blockquote>сопоставить их очевидные эквиваленты.<script>,<style>,<meta>, встроенныйstyle=атрибуты, имена классов, атрибуты данных — все отброшено. Ничего из этого не выживает, и ничего из этого не должно быть.
Сохраненная страница — это не то же самое, что чистый HTML
Есть реальная разница между файлом HTML, который написал человек, и файлом HTML, который сбрасывает браузер. и это сразу же появляется в выводе.
HTML, написанный вручную — экспорт статического сайта, сборка документации, шаблон электронной почты, отчет, созданный инструмент отчетности — обычно аккуратный и семантический. Заголовки есть заголовки. Абзацы есть абзацы. Эти конвертировать почти идеально.
Страница, сохраненная с помощью Ctrl+S с современного сайта, — это совсем другое дело. Вы получаете законченный DOM после JavaScript. с прикрепленным заголовком, полосой связанных статей, тремя подсказками для информационного бюллетеня и картой сайта в нижнем колонтитуле с восемьдесят ссылок. Все это законный HTML, поэтому все это конвертируется. Вывод правильный — он только что получил страничная мебель в нем. Помогают две привычки: использовать режим чтения вашего браузера и сохранять его или конвертировать. сначала удалите верхнюю и нижнюю часть Markdown, прежде чем использовать его. Снятие скимминга и обрезка происходит под минуту и заметно улучшает все, что вы делаете дальше.
Когда файл превращается почти в ничто
Иногда вы конвертируете сохраненную страницу и получаете обратно заголовок и две строки. Это не провал конвертер — это одностраничное приложение.
Сайты, созданные с помощью React, Vue, Angular и других, часто поставляются с действительно пустой HTML-оболочкой:
а <div id="root"></div> и тег сценария. Содержимое, которое вы видели в браузере, было
собирается с помощью JavaScript во время выполнения и никогда не существовало в файле. В зависимости от того, как вы его сохранили, вы можете
захватили оболочку, а не визуализированный результат. Откройте файл в текстовом редакторе и найдите
предложение, которое вы помните, читали — если его нет, преобразователь не сможет его изобрести.
Исправление состоит в том, чтобы вместо этого сохранить визуализированный DOM (в Chrome DevTools щелкните правой кнопкой мыши <html>
node и скопируйте внешний HTML в новый файл) или полностью пропустить файл и использовать
Web2Txt, который принимает действующий URL-адрес, загружает
страницу правильно и возвращает Markdown. Это различие стоит учитывать: эта страница преобразует
HTML-файл, который у вас уже есть, а Web2Txt извлекает страницу, которую вы не видите.
Проблема относительной ссылки
Это ловит людей. Страница, которая ссылается на /docs/getting-started или
../api/reference.html полагается на то, что браузер знает, из какого домена и каталога он пришел
от. Как только файл удаляется с сервера, этот контекст исчезает. Преобразованный Markdown будет добросовестно
содержать [Getting Started](/docs/getting-started) — ссылка, которая теперь никуда не указывает
частности.
Для работы LLM это обычно не имеет значения, потому что вас волнует проза и текст ссылки, а не то,
URL-адреса разрешаются. Но если вы создаете документацию, которую собираетесь опубликовать, или базу знаний, в которой
перекрестные ссылки должны работать, проверьте вывод и либо перепишите пути, либо удалите ссылки. Изображение
src атрибуты имеют ту же проблему, поэтому изображения с оффлайн-страницы, как правило, проходят
как неработающие ссылки.
Markdown или обычный текст для HTML-файла?
Выберите Markdown, если структура страницы соответствует желаемой. Документация с примерами кода и
Иерархия заголовков. Учебное пособие с пронумерованными шагами. Сравнительная статья, построенная вокруг таблицы. Электронная почта
информационный бюллетень с разделами. Во всех этих случаях # и трубы и огороженные блоки
несущие реальную информацию, и Конвертер HTML в Markdown для LLM рабочие процессы делает
именно то, что вы хотите.
Выберите HTML в обычный текст когда ты нужны только слова — создание корпуса, подача классификатора, индексация для поиска или запуск любого конвейера где синтаксические символы являются шумом. Вверху этой страницы есть переключатель формата, который переключает между два и переносит выбранный вами файл, поэтому конвертирует одну и ту же страницу в обе стороны и сравнивает затраты. ты один загружаешь.
Что люди на самом деле с этим делают
- Передача документов помощнику по кодированию. Сохраните страницы библиотечной документации, преобразуйте их в Markdown и вставьте рядом с вашим Репозиторий GitHub в виде текста. Модель видит как поверхность API, так и ваше использование, а блоки кода остаются нетронутыми с обеих сторон.
- Миграция сайта. Генераторы статических сайтов едят Markdown. Преобразование устаревших HTML-страниц часто является самым быстрым первым этапом миграции CMS, даже если вы потом наведете порядок.
- Архивирование статей для последующего анализа. Файлы Markdown небольшие, допускают возможность сравнения и greppable так, как никогда не бывает папок с сохраненным HTML.
- Превращение шаблонов электронных писем в читаемый контент. Маркетинговый HTML — это столовый суп; тот Версия Markdown — это фактическое сообщение.
- Создание оперативных библиотек. Справочный материал в Markdown попадает прямо в систему. подсказку или индекс RAG без дальнейшей обработки.
Счетчик токенов под выходными данными здесь является практическим битом. Страница документации, которая выглядела короткой браузер может оказаться на удивление тяжелым, если в него включены таблицы и блоки кода, и зная их количество прежде чем вставлять удары, необходимо обнаружить ошибку усечения.
Часто задаваемые вопросы
Как преобразовать HTML-файл в Markdown?
Загрузите .html или .htm файл выше, и он возвращается как Markdown, который можно загрузить как .md. Бесплатно, 50 МБ на файл, без аккаунта. Заголовки сопоставляются с # уровни, списки остаются вложенными, ссылки сохраняют свои URL-адреса [text](url) форму, а блоки кода остаются огражденными.
Сохраняются ли ссылки и их URL-адреса?
Да, это основная причина выбрать Markdown вместо простой текст здесь. Каждый якорь преобразуется в [label](href), поэтому пункты назначения сохраняются. Если вы архивируете документацию или проверяете, куда указывает страница, в этом заключается разница между полезной записью и перефразированием.
Могу ли я преобразовать действующий URL-адрес вместо сохраненного файла?
Не с этой страницы. Web2Txt берет URL-адрес, извлекает страницу и возвращает Markdown за один шаг. Эта страница предназначена для HTML-кода, который у вас уже есть на диске — сохраненных статей, экспортированных информационных бюллетеней, созданных отчетов или результатов локальной сборки.
Разумный ли это способ перенести сайт на статический генератор?
По содержанию да. Проза, заголовки, списки, таблицы и блоки кода преобразуются достаточно чисто, чтобы их можно было фиксировать и редактировать. Чего он не сделает, так это перестроит вашу информационную архитектуру, перепишет внутренние ссылки на новые пути или извлечет вступительную информацию — это те части миграции, которые остаются ручными независимо от того, какой конвертер вы используете.
Что происходит с таблицами и блоками кода?
Таблицы становятся конвейерными таблицами, а изолированные блоки кода остаются изолированными, причем оба варианта обычно хорошо сохраняются, поскольку исходный HTML-код их явно пометил. Распространенной жертвой является подсветка синтаксиса, выраженная через каждый токен. <span> classы — код правильный, но языковую подсказку, которая привела к раскраске, часто невозможно восстановить, поэтому добавьте ее обратно вручную, если это имеет значение.
Другие форматы и инструменты
HTML — один из форматов File2Txt ручками — загружай что угодно и всё получится, что делать. Если ты знаешь, что у тебя есть, иди прямо к PDF в Markdown, Слово Markdown, JSON в Markdown, или XML в Markdown. Для табличных экспорт, CSV в Markdown строит таблицы каналов из данных с разделителями.
Для кода есть Конвертер GitHub в текст, а GitLab версияи конвертер локальных папок который никогда не загружается что угодно. Также есть более длинный фрагмент подготовка документов для LLM если вам нужен общий аргумент, а не специфичный для HTML.
Repo2Txt создан и поддерживается v12hero, независимый разработчик, создающий собственные и веб-приложения, ориентированные на конфиденциальность.