Saya sedang mencari cara untuk mengkonversi folder yang penuh dengan file HTML ke teks biasa. Yang saya inginkan adalah sebanyak mungkin file teks seperti apa yang akan saya dapatkan jika saya memilih semua teks dalam browser web, menyalinnya, dan menempelkan teks ke file teks biasa.
TIDAK, BENAR-BENAR, SAYA INGIN TEKSTIL PLAIN YANG TIDAK DIUBAH. Semua solusi yang saya temukan menghasilkan penurunan harga atau sesuatu yang terlihat seperti itu, atau mencoba untuk melestarikan tata letak, atau menggunakan tanda bintang dan garis bawah untuk menunjukkan format teks, atau mempertahankan konten skrip dalam file output, atau sesuatu yang pintar. .
Yang saya inginkan adalah kata-kata yang ditulis oleh penulis dalam urutan yang ditulis penulisnya. Saya bahkan tidak peduli jika pemrosesan mengubah semua item daftar dalam daftar menjadi satu paragraf, atau bahkan meruntuhkan seluruh dokumen menjadi satu paragraf. Semua ini jauh lebih baik daripada memberi saya apa pun selain bahasa aktual yang terkandung dalam dokumen.
Saya suka aplikasi terminal atau skrip Python, tapi saya akan mengambil apa pun yang bisa saya dapatkan.
<
dan>
. Saya tidak tahused
, tapi saya cukup yakin bisa melakukannya.Jawaban:
html2text adalah skrip Python yang mengubah halaman HTML menjadi teks terstruktur Markdown yang setara. html2text dapat diunduh dan dijalankan di sistem operasi apa pun yang memasang Python. Program html2text berada dalam repositori dari banyak distribusi Linux dan dapat dijalankan dari command-line seperti ini:
Perintah ini tidak hanya mengonversi file html asli ke teks, tetapi juga melakukan pekerjaan yang cukup baik untuk membuat output teks biasa mudah dibaca. Judul terlihat seperti pos, daftar terlihat seperti daftar, dll.
sumber
-style compact
opsi dan menyingkirkan lekukan yang dibuat dengan karakter spasi juga.Gunakan
w3m -dump <page.html>
.Ini akan memberi Anda representasi teks dari file html.
Dari halaman manual:
Meskipun dikatakan
formatted
, hasilnya hanya teks biasa.sumber
lynx
juga mendukung-dump
.Unix.com: Cara menghapus hanya tag HTML dalam file yang menyediakan:
sed -n '/^$/!{s/<[^>]*>//g;p;}' filename
atau
html2text
CommandLineFu: Hapus semua tag HTML menunjukkan
sed
baris lain , atauawk
.Saya percaya ini adalah operasi yang agak umum disediakan oleh banyak program, dan bahwa nama yang paling umum untuk tugas ini adalah "menghapus" HTML. Google Search cepat untuk: tag html strip Linux menunjukkan beberapa solusi, termasuk PHP: tag strip .
sumber