HTML sang Markdown: Biến một trang đã lưu thành nội dung đáng đọc
Mở bất kỳ .html tệp bạn đã lưu từ web trong trình soạn thảo văn bản và điều đầu tiên bạn sẽ
thông báo là nó ít như thế nào trong bài viết. Mười lăm trăm dòng menu điều hướng, biểu ngữ cookie, theo dõi
pixel, nội tuyến <style> khối và <div class="wrapper-outer-container">
lồng sâu sáu cấp độ - bao quanh khoảng bốn mươi đoạn văn thực tế. Dán nội dung đó vào cuộc trò chuyện
trợ lý và bạn sẽ ghi hầu hết cửa sổ ngữ cảnh của mình vào phần đánh dấu không có ý nghĩa gì đối với mô hình.
Chuyển đổi HTML tới Markdown lật tỷ lệ đó. Các thẻ mang ý nghĩa sẽ được dịch; các thẻ chỉ mang bố cục sẽ bị loại bỏ. Những gì xuất hiện là một tài liệu có hình dạng giống như trang gốc — tiêu đề, danh sách, bảng, liên kết, khối mã — với khoảng một phần mười ký tự. Tải lên tệp ở trên và bạn sẽ có tệp đó sau vài giây. Miễn phí, không cần đăng ký, không có gì được lưu trữ.
Cách ánh xạ thẻ HTML tới Markdown
Markdown được thiết kế dưới dạng tốc ký cho một tập hợp con HTML, vì vậy hầu hết bản dịch gần giống với một đối một. Biết ánh xạ sẽ cho bạn biết chính xác những gì mong đợi ở đầu ra:
<h1>thông qua<h6>trở thành#thông qua######. Độ sâu tiêu đề được giữ nguyên theo đúng nghĩa đen, điều này quan trọng hơn vẻ ngoài của nó — Người mẫu được yêu cầu tóm tắt từng phần cần biết những đề mục nào là anh em.<ul>,<ol>và lồng nhau<li>trở thành dấu gạch ngang và danh sách số có thụt đầu dòng mang sự lồng ghép.<table>trở thành một bảng ống, miễn là bảng đó là bảng dữ liệu thực. Bàn được sử dụng hoàn toàn dành cho bố cục — vẫn phổ biến trong email HTML và các trang web cũ hơn — chuyển đổi thành thứ gì đó có cấu trúc hợp lệ nhưng vô dụng về mặt ngữ nghĩa.<a href>trở thành[text](url), vì vậy các điểm đến tồn tại hơn là để lại cho bạn văn bản neo mồ côi.<code>và<pre>trở thành backticks và các khối có rào chắn. Đây là lý do lớn nhất khiến các nhà phát triển chuyển đổi các trang tài liệu theo cách này — đoạn trích vẫn là đoạn trích.<strong>,<em>,<blockquote>bản đồ đến của họ tương đương rõ ràng.<script>,<style>,<meta>, nội tuyếnstyle=thuộc tính, tên lớp, thuộc tính dữ liệu - tất cả đều bị loại bỏ. Không có thứ nào sống sót, và không ai trong số đó nên.
Một trang đã lưu không giống như một trang HTML sạch
Có sự khác biệt thực sự giữa tệp HTML mà một người đã viết và tệp HTML mà trình duyệt đã loại bỏ, và nó hiển thị ngay lập tức trong đầu ra.
HTML được viết bằng tay — xuất trang web tĩnh, xây dựng tài liệu, mẫu email, báo cáo được tạo bởi một công cụ báo cáo - có xu hướng gọn gàng và có ngữ nghĩa. Tiêu đề là tiêu đề. Đoạn văn là đoạn văn. Những cái này chuyển đổi gần như hoàn hảo.
Một trang được lưu bằng Ctrl+S từ một trang hiện đại lại là một trang khác. Bạn nhận được DOM hậu JavaScript, hoàn thành với tiêu đề cố định, thanh bài viết liên quan, ba lời nhắc bản tin và sơ đồ trang web ở chân trang với tám mươi liên kết. Tất cả những thứ đó đều là HTML hợp pháp nên tất cả đều chuyển đổi được. Đầu ra đúng - nó vừa có trang nội thất trong đó. Hai thói quen hữu ích: sử dụng chế độ đọc của trình duyệt của bạn và lưu từ chế độ đó hoặc chuyển đổi trước tiên và xóa phần trên cùng và phần dưới cùng của Markdown trước khi bạn sử dụng. Việc hớt váng và cắt tỉa mất một khoảng thời gian phút và cải thiện đáng kể bất cứ điều gì bạn làm tiếp theo.
Khi tệp chuyển đổi thành gần như không có gì
Thỉnh thoảng bạn sẽ chuyển đổi một trang đã lưu và lấy lại tiêu đề và hai dòng. Đó không phải là sự thất bại của công cụ chuyển đổi — đó là một ứng dụng một trang.
Các trang web được xây dựng bằng React, Vue, Angular và bạn bè thường gửi một shell HTML thực sự trống:
một <div id="root"></div> và một thẻ script. Nội dung bạn thấy trong trình duyệt là
được tập hợp bởi JavaScript khi chạy và chưa bao giờ tồn tại trong tệp. Tùy thuộc vào cách bạn lưu nó, bạn có thể
đã chiếm được shell chứ không phải là kết quả được hiển thị. Mở tệp trong trình soạn thảo văn bản và tìm kiếm
câu bạn nhớ đã đọc — nếu nó không có ở đó, bộ chuyển đổi không thể tạo ra nó.
Cách khắc phục là lưu DOM được hiển thị thay thế (trong Chrome DevTools, nhấp chuột phải vào <html>
nút và sao chép HTML bên ngoài vào một tệp mới) hoặc bỏ qua toàn bộ tệp và sử dụng
Web2Txt, lấy một URL trực tiếp, tải
trang đúng cách và trả về Markdown. Sự khác biệt đó đáng được lưu ý: trang này chuyển đổi một
Tệp HTML bạn đã có, trong khi Web2Txt tìm nạp một trang mà bạn không tìm nạp.
Vấn đề liên kết tương đối
Cái này bắt người ra ngoài. Một trang liên kết đến /docs/getting-started hoặc
../api/reference.html đang dựa vào trình duyệt để biết nó đến từ miền và thư mục nào
từ. Sau khi tệp tắt khỏi máy chủ, ngữ cảnh đó sẽ không còn nữa. Markdown được chuyển đổi sẽ trung thực
chứa đựng [Getting Started](/docs/getting-started) — một liên kết hiện không trỏ đến đâu cả
đặc biệt.
Đối với công việc LLM, điều này thường không thành vấn đề, vì bạn quan tâm đến văn xuôi và văn bản liên kết chứ không phải liệu
các URL giải quyết. Nhưng nếu bạn đang xây dựng tài liệu bạn định xuất bản hoặc một cơ sở kiến thức nơi
tham chiếu chéo cần hoạt động, kiểm tra đầu ra và viết lại đường dẫn hoặc loại bỏ các liên kết. Hình ảnh
src các thuộc tính có cùng một vấn đề, đó là lý do tại sao hình ảnh của trang ngoại tuyến có xu hướng xuất hiện
như tài liệu tham khảo bị hỏng.
Markdown hoặc Văn bản thuần túy cho tệp HTML?
Chọn Markdown khi cấu trúc của trang là một phần của những gì bạn muốn. Tài liệu có mẫu mã và
hệ thống phân cấp tiêu đề. Một hướng dẫn với các bước được đánh số. Một bài viết so sánh được xây dựng xung quanh một bảng. Một email
bản tin với các phần. Trong tất cả những điều đó, # và các đường ống và các khối có hàng rào là
mang thông tin thực tế và Công cụ chuyển đổi HTML sang Markdown cho LLM quy trình công việc đang làm
chính xác những gì bạn muốn
chọn HTML sang văn bản thuần túy khi bạn chỉ muốn các từ - xây dựng kho văn bản, cung cấp bộ phân loại, lập chỉ mục để tìm kiếm hoặc chạy bất kỳ quy trình nào trong đó các ký tự cú pháp là tiếng ồn. Có một nút chuyển đổi định dạng ở đầu trang này để chuyển đổi giữa cả hai và chuyển tệp đã chọn của bạn sang, do đó, chuyển đổi cùng một trang theo cả hai cách và so sánh chi phí bạn tải lên một lần.
Mọi người thực sự làm gì với điều này
- Cung cấp tài liệu cho trợ lý mã hóa. Lưu các trang tài liệu của thư viện, chuyển đổi chúng thành Markdown và dán chúng cùng với Kho lưu trữ GitHub dưới dạng văn bản. Người mẫu nhìn thấy cả bề mặt API và cách bạn sử dụng nó cũng như các khối mã vẫn nguyên vẹn ở cả hai bên.
- Di chuyển một trang web. Trình tạo trang tĩnh ăn Markdown. Chuyển đổi các trang HTML cũ thường là bước đầu tiên nhanh nhất trong quá trình di chuyển CMS, ngay cả khi bạn dọn dẹp sau đó.
- Lưu trữ bài viết để phân tích sau này. Các tệp Markdown có kích thước nhỏ, có thể khác biệt và grepable theo cách mà một thư mục HTML đã lưu không bao giờ có được.
- Biến các mẫu email thành nội dung có thể đọc được. HTML tiếp thị là món súp trên bàn ăn; cái Phiên bản Markdown là tin nhắn thực tế.
- Xây dựng thư viện nhắc nhở. Tài liệu tham khảo trong Markdown được đưa thẳng vào hệ thống nhắc hoặc chỉ mục RAG mà không cần xử lý thêm.
Bộ đếm mã thông báo bên dưới đầu ra là bit thực tế ở đây. Một trang tài liệu có vẻ ngắn trình duyệt có thể nặng một cách đáng ngạc nhiên khi bao gồm các bảng và khối mã và biết số trước khi bạn dán các nhịp tìm ra từ lỗi cắt ngắn.
Câu hỏi thường gặp
Làm cách nào để chuyển đổi tệp HTML thành Markdown?
Tải lên .html hoặc .htm ở trên và nó trở lại dưới dạng Markdown, có thể tải xuống dưới dạng .md. Miễn phí, 50 MB mỗi tệp, không cần tài khoản. Bản đồ tiêu đề tới # cấp độ, danh sách được lồng vào nhau, liên kết giữ URL của chúng ở [text](url) biểu mẫu và các khối mã luôn được rào chắn.
Nó có giữ các liên kết và URL của chúng không?
Có - đó là lý do chính để chọn Markdown văn bản thuần túy ở đây. Mỗi mỏ neo chuyển đổi thành [label](href), do đó các điểm đến vẫn tồn tại. Nếu bạn đang lưu trữ tài liệu hoặc kiểm tra vị trí của một trang, đó là sự khác biệt giữa một bản ghi hữu ích và một bản diễn giải.
Tôi có thể chuyển đổi URL trực tiếp thay vì tệp đã lưu không?
Không phải từ trang này. Web2Txt lấy một URL, tìm nạp trang và trả về Markdown trong một bước. Trang này dành cho HTML mà bạn đã có trên đĩa — các bài viết đã lưu, bản tin đã xuất, báo cáo được tạo hoặc đầu ra từ bản dựng cục bộ.
Đây có phải là cách hợp lý để di chuyển trang web sang trình tạo tĩnh không?
Về nội dung thì có. Văn xuôi, tiêu đề, danh sách, bảng và khối mã chuyển đổi đủ rõ ràng để cam kết và chỉnh sửa. Những gì nó sẽ không làm là xây dựng lại kiến trúc thông tin của bạn, viết lại các liên kết nội bộ sang các đường dẫn mới hoặc trích xuất nội dung phía trước — đó là những phần của quá trình di chuyển luôn được thực hiện thủ công bất kể bạn sử dụng trình chuyển đổi nào.
Điều gì xảy ra với các bảng và khối mã?
Các bảng trở thành bảng ống và các khối mã có rào chắn vẫn được rào chắn, cả hai thường tồn tại tốt vì HTML nguồn đã đánh dấu chúng một cách rõ ràng. Tai nạn thường gặp là việc đánh dấu cú pháp được thể hiện thông qua mỗi mã thông báo <span> các lớp — mã đúng nhưng gợi ý ngôn ngữ điều khiển màu thường không thể phục hồi được, vì vậy, hãy thêm lại gợi ý theo cách thủ công nếu cần.
Các định dạng và công cụ khác
HTML là một trong những định dạng File2Txt xử lý - tải lên bất kỳ thứ gì và nó sẽ tìm ra những việc cần làm. Nếu bạn biết mình có gì, hãy đi thẳng tới PDF sang Markdown, Word sang Markdown, JSON tới Markdownhoặc XML tới Markdown. Đối với dạng bảng xuất khẩu, CSV tới Markdown xây dựng bảng ống từ dữ liệu được phân tách.
Đối với mã, có GitHub sang trình chuyển đổi văn bản, một Phiên bản GitLab, và một trình chuyển đổi thư mục cục bộ cái đó không bao giờ tải lên bất cứ điều gì. Ngoài ra còn có một đoạn dài hơn trên chuẩn bị tài liệu cho LLM nếu bạn muốn đối số chung thay vì đối số dành riêng cho HTML.
Repo2Txt được xây dựng và duy trì bởi v12hero, một nhà phát triển độc lập xây dựng các ứng dụng web và ứng dụng gốc ưu tiên quyền riêng tư.