1. Məhsullar
  2.   HTML
  3.   GO
  4.   HTML2Text
 
  

HTML sənədlərini mətnə çevirmək üçün pulsuz Go kitabxanası

HTML2Text, Go tətbiqlərində HTML işarələməsini insan tərəfindən oxunaqlı sadə mətnə çevirə bilən çox sadə Açıq Mənbəli Go kitabxanasıdır.

Bu günün rəqəmsal mühitində məzmun bir neçə format və platformada əlçatan olmalıdır. HTML2Text, Jay Taylor tərəfindən yaradılmış güclü Go kitabxanasıdır və əsas problemi həll edir: HTML məzmununu oxunaqlı, yaxşı formatlanmış sadə mətnə çevirmək. Əvvəlcə HTML‑e‑poçtların bütün alıcılar tərəfindən oxunaqlı qalmasını təmin etmək üçün – HTML‑i deaktiv edən müştərilər və ya əlçatanlıq ehtiyacları olanlar daxil olmaqla – hazırlanmışdı. Bu kitabxana məzmun transformasiyası ilə məşğul olan inkişafçılar üçün çoxistiqamətli alətə çevrilib.

Kitabxana cədvəllər, siyahılar və keçidlər daxil olmaqla mürəkkəb HTML strukturlarını təmiz, markdown‑tərzində sadə mətnə çevirir, eyni zamanda məntiqi strukturu və oxunaqlılığı qoruyur. Kitabxananın bir neçə vacib xüsusiyyəti var, məsələn, Ağıllı HTML‑dən‑Mətnə çevirmə, gözəl formatlı cədvəl renderləməsi, özelleştirilebilir çevirmə seçimləri, komanda sətiri interfeysi və s. HTML2Text saf Go dilində, heç bir xarici asılılıq olmadan yazılıb, tipik HTML sənədləri üçün sürətli, yaddaş‑effektiv, axın‑dostu dizaynı və veb serverlərdə eyni anda istifadəyə uyğun thread‑safe-dir. Sadə API‑si, elastik seçimləri və minlərlə layihədə sübut olunmuş uğurlu tarixi ilə HTML2Text Go alət dəstinizdə yer almalıdır.

Previous Next

HTML2Text ilə Başlamaq

HTML2Text‑i quraşdırmağın tövsiyə olunan və ən asan yolu GitHub‑dan istifadə etməkdir. Zəhmət olmasa, aşağıdakı əmri istifadə edərək quraşdırmanı asanlaşdırın.

HTML2Text Kitabxanasını GitHub vasitəsilə quraşdırın

go get jaytaylor.com/html2text

Kitabxana Go 1.x və ya daha yeni versiyanı tələb edir və sıfır xarici asılılığa malikdir, layihənizi yüngül saxlayır. Həmçinin onu əl ilə quraşdıra bilərsiniz; son buraxılış fayllarını birbaşa GitHub deposundan yükləyin.

Go vasitəsilə Əsas HTML-dən Mətnə Çevirmə

Açıq mənbəli HTML2Text kitabxanası proqram inkişaf etdiricilərinə Go tətbiqləri daxilində HTML faylını mətn formatına yükləmək və çevirmək üçün asanlıq yaradır. HTML2Text yalnız etiketləri silmir—o, HTML strukturunu ağıllı şəkildə şərh edərək başlıqlar, paraqraflar və siyahıların semantik başa düşülməsi, link mətnindən sonra mötərizədə göstərilən URL-lərlə linklərin qorunması, oxunaqlılığı qoruyan, artıq sətir qırılmalarını önləyən boşluq normallaşdırması, UTF-8 BOM (Byte Order Mark) daxil olmaqla simvol kodlaşdırması dəstəyi ilə insan tərəfindən oxunaqlı çıxış istehsal edir. Budur, kitabxananı istifadə edərək Go tətbiqləri daxilində HTML‑i mətn formatına yükləmək və çevirmək üçün tam bir nümunə.

Sadə HTML məzmununu Go kitabxanası vasitəsilə mətn formatına necə çevirmək olar?

package main

import (
    "fmt"
    "jaytaylor.com/html2text"
)

func main() {
    html := `
        

Xidmətimizə Xoş Gəlmisiniz

Bizim xüsusiyyətlər səhifəmizə baxın, təklif etdiklərimiz haqqında daha çox məlumat üçün.

  • 24/7 Dəstək
  • Pulsuz Sınaq
  • Müəssisə Planları
` text, err := html2text.FromString(html, html2text.Options{}) if err != nil { panic(err) } fmt.Println(text) }

Gözəl Formatlama ilə Cədvəl Göstərilməsi

HTML2Text-in ən diqqətəlayiq xüsusiyyətlərindən biri, HTML cədvəllərini ASCII əsaslı mətn cədvəllərinə çevirə bilməsidir. Sadə mətn cədvəlləri adətən qarışıq məlumat şorbasına çevrilir. PrettyTables xüsusiyyəti ASCII sənəti vasitəsilə cədvəl strukturunu qoruyur, beləliklə rəqəmsal məlumatlar, qiymət cədvəlləri və ya müqayisə qrafikləri hər hansı bir kontekstdə oxunaqlı olur. Bunlar e‑poçt vasitəsilə göndərilən avtomatlaşdırılmış hesabatlar, komanda sətiri alətinin çıxışı və ya məlumat strukturu vacib olduğu SMS bildirişləri üçün mükəmməldir. Aşağıdakı kod nümunəsi göstərir ki, proqramçılar HTML cədvəlini Go əmrləri ilə formatlanmış ASCII cədvəlinə necə çevirə bilərlər.

HTML cədvəlini Go vasitəsilə formatlanmış ASCII cədvəlinə necə çevirmək olar?

func sendMonthlyReport(userEmail string, metricsHTML string) {
    // Convert HTML table to formatted ASCII table
    textReport, _ := html2text.FromString(metricsHTML, html2text.Options{
        PrettyTables: true, // Preserves table structure visually
    })
    
    // Even in plain text, the data remains organized:
    // +----------------+-----------+
    // | METRIC         | VALUE     |
    // +----------------+-----------+
    // | Page Views     | 24,589    |
    // | Conversion Rate| 2.4%      |
    // +----------------+-----------+
    
    sendEmail(userEmail, "Monthly Report", textReport)
}

Go Kitabxanası vasitəsilə E-poçt Fallback Yaradılması

HTML2Text üçün ən yaygın istifadə halları arasında HTML e‑poçt şablonlarını onların sadə mətn ekvivalentlərinə çevirmək də var. E‑poçt müştəriləri HTML renderləmə qabiliyyətləri baxımından çox fərqlidir. Bəzi təhlükəsizlik yönümlü istifadəçilər HTML‑i tamamilə söndürür, daha köhnə müştərilər və ya görmə qabiliyyəti məhdud olan istifadəçilər üçün ekran oxuyucular adətən sadə mətnlə daha yaxşı işləyir. Mətn alternativi təqdim etmək yalnız yaxşı təcrübə deyil—bu, əlçatanlıq və çatdırılma üçün vacibdir. Avtomatik olaraq sinxronlaşdırılmış sadə mətn versiyaları yaradaraq, hər bir alıcının məzmununuzu oxuya biləcəyinə, spam filtrinin tetiklenməsini azaltmağa və WCAG kimi əlçatanlıq standartlarına uyğun olmağa zəmanət verirsiniz.

Go kitabxanası vasitəsilə e‑poçt mesajının sadə mətn ehtiyat nüsxəsini necə yaratmaq olar?

func sendTransactionalEmail(userEmail, htmlContent string) error {
    // Generate plain text fallback
    textContent, err := html2text.FromString(htmlContent, html2text.Options{})
    if err != nil {
        return fmt.Errorf("failed to create text alternative: %v", err)
    }
    
    // Send multipart email (both HTML and text)
    email := &Email{
        To: userEmail,
        HTMLBody: htmlContent,
        TextBody: textContent, // Critical for users with HTML disabled
    }
    
    return emailService.Send(email)
}

HTML-dən Mətnə Çevirərkən Keçidlərlə İşləmək

HTML2Text kitabxanası HTML‑dən mətnə çevirmə zamanı linklərin işlənməsini tam dəstəkləyir. Linklər HTML məzmununda xüsusilə vacibdir və html2text həm link mətninin, həm də URL‑nin qorunmasını təmin edir. Link mətnı normal şəkildə göstərilir, faktiki URL isə mötərizədə əlavə olunur, bu da sadə mətn versiyasının oxucularının hələ də linklənmiş resurslara daxil ola bilməsini təmin edir. Aşağıdakı nümunə bunun necə həyata keçiriləcəyini göstərir.

Go tətbiqlərində HTML‑ni mətnə çevirərkən keçidləri necə idarə etmək olar?

package main

import (
    "fmt"
    "log"
    
    "jaytaylor.com/html2text"
)

func main() {
    htmlContent := `
    
        
            

Baxın məhsul kataloqu və ya dəstək səhifəsi.

` text, err := html2text.FromString(htmlContent) if err != nil { log.Fatal(err) } fmt.Println(text) }
 Azəri