1. Produkti
  2.   HTML
  3.   GO
  4.   HTML2Text
 
  

Bezmaksas Go bibliotēka HTML dokumentu pārvēršanai uz tekstu

HTML2Text ir ļoti vienkārša atvērtā koda Go bibliotēka, kas spēj pārvērst HTML marķējumu cilvēkiem lasāmā vienkāršā tekstā Go lietojumprogrammās.

Šodienas digitālajā vidē saturam jābūt pieejamam vairākos formātos un platformās. HTML2Text ir spēcīga Go bibliotēka, ko izveidoja Džejs Tejlors, kas risina būtisku problēmu: HTML satura pārveidošanu lasāmā, labi formatētā vienkāršā tekstā. Sākotnēji izstrādāta, lai nodrošinātu, ka HTML e-pasti ir lasāmi visiem saņēmējiem — ieskaitot tos, kuriem ir atspējoti HTML klienti vai ir pieejamības vajadzības — šī bibliotēka ir kļuvusi par daudzpusīgu rīku izstrādātājiem, kas strādā ar satura pārveidi.

Bibliotēka pārveido sarežģītas HTML struktūras, tostarp tabulas, sarakstus un saites, par tīru, markdowna garšu teksta formātu, saglabājot loģisko struktūru un lasāmību. Bibliotēkas sastāvā ir vairāki svarīgi funkcionalitātes elementi, piemēram, inteliģenta HTML‑uz‑tekstu pārveide, tabulu attēlošana ar skaistu formatēšanu, pielāgojamas pārveides iespējas, komandrindas interfeiss un tā tālāk. HTML2Text ir rakstīts tīrā Go valodā bez ārējām atkarībām, kas padara to ātru tipiskajiem HTML dokumentiem, atmiņā efektīvu ar straumēšanas draudzīgu dizainu un pavedienu drošu vienlaicīgai lietošanai tīmekļa serveros. Ar vienkāršu API, elastīgām opcijām un pierādītu pieredzi tūkstošos projektos, HTML2Text ir pelnījis vietu jūsu Go rīkkopā.

Previous Next

Sākums ar HTML2Text

Ieteicamais un vienkāršākais veids, kā instalēt HTML2Text, ir izmantot GitHub. Lūdzu, izmantojiet šādu komandu, lai veiktu gludu instalāciju.

Instalējiet HTML2Text bibliotēku caur GitHub

go get jaytaylor.com/html2text

Bibliotēka pieprasa Go 1.x vai jaunāku un nav ārēju atkarību, saglabājot jūsu projektu vieglu. Jūs varat arī instalēt to manuāli; lejupielādējiet jaunākos izlaiduma failus tieši no GitHub krātuves.

Pamata HTML uz teksta konvertēšana ar Go

Atvērtā koda HTML2Text bibliotēka ļauj programmatūras izstrādātājiem iekļaut un pārveidot HTML failus teksta formātā savās Go lietojumprogrammās. HTML2Text ne tikai noņem tagus — tas inteliģenti interpretē HTML struktūru, lai radītu cilvēkam lasāmu izvadi ar semantisku izpratni par virsrakstiem, rindkopām un sarakstiem, saglabājot saites ar URL, kas tiek parādīti iekavās aiz saites teksta, atstarpju normalizāciju, kas uztur lasāmību bez pārmērīgiem rindas pārtraukumiem, rakstzīmju kodējuma atbalstu, ieskaitot UTF-8 ar BOM (Byte Order Mark). Šeit ir pilns piemērs, kā izmantot bibliotēku, kas ļauj ielādēt un pārveidot HTML uz teksta formātu Go lietojumprogrammās.

Kā pārveidot vienkāršu HTML saturu teksta formātā, izmantojot Go bibliotēku?

package main

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

func main() {
    html := `
        

Laipni lūdzam mūsu pakalpojumā

Apskatiet mūsu funkciju lapu par vairāk informācijas par to, ko mēs piedāvājam.

  • 24/7 atbalsts
  • Bezmaksas izmēģinājums
  • Uzņēmuma plāni
` text, err := html2text.FromString(html, html2text.Options{}) if err != nil { panic(err) } fmt.Println(text) }

Tabulu attēlošana ar skaistu formatēšanu

Viens no izciliem HTML2Text īpašībām ir spēja attēlot HTML tabulas kā ASCII balstītas teksta tabulas. Tabulas vienkāršā tekstā parasti kļūst par nesakārtotu datu zupu. PrettyTables funkcija saglabā tabulu struktūru, izmantojot ASCII mākslu, padarot skaitliskos datus, cenu tabulas vai salīdzinājumu diagrammas lasāmākas jebkurā kontekstā. Tie ir ideāli automatizētiem pārskatiem, kas nosūtīti pa e-pastu, komandrindas rīku izvadei vai SMS paziņojumiem, kur datu struktūra ir svarīga. Zemāk esošais koda piemērs parāda, kā programmatūras izstrādātāji var pārveidot HTML tabulu par formatētu ASCII tabulu, izmantojot Go komandas.

Kā pārveidot HTML tabulu uz formatētu ASCII tabulu, izmantojot Go?

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)
}

E-pasta rezerves ģenerēšana ar Go bibliotēku

Viens no visbiežākajiem HTML2Text lietošanas gadījumiem ir HTML e-pasta veidņu pārveidošana uz to vienkāršā teksta ekvivalentiem. E-pasta klienti ļoti atšķiras savās HTML renderēšanas spējās. Daži drošību ņemot vērā lietotāji pilnībā izslēdz HTML, kamēr vecāki klienti vai ekrāna lasītāji redzes traucējumiem ciešām lietotājiem biežāk darbojas ar vienkāršu tekstu. Teksta alternatīvas nodrošināšana nav tikai laba prakse — tā ir būtiska pieejamībai un piegādājamībai. Automātiski ģenerējot sinhronizētas vienkārša teksta versijas, jūs nodrošināt, ka katrs saņēmējs var izlasīt jūsu saturu, samazināt surogātpasta filtru aktivizēšanu un atbilst pieejamības standartiem, piemēram, WCAG.

Kā ģenerēt vienkārša teksta rezerves variantu e-pasta ziņojumam, izmantojot Go bibliotēku?

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)
}

Darbs ar saitēm HTML uz tekstu pārveidošanas laikā

HTML2Text bibliotēka ir iekļāvusi pilnīgu atbalstu saišu apstrādei HTML uz teksta pārveidošanas procesā. Saites ir īpaši svarīgas HTML saturā, un html2text nodrošina, ka gan saišu teksts, gan URL tiek saglabāti. Saišu teksts tiek parādīts normāli, kamēr patiesais URL tiek pievienots iekavās, nodrošinot, ka vienkārša teksta versijas lasītāji joprojām var piekļūt saistītajiem resursiem. Zemāk esošais piemērs parāda, kā to sasniegt.

Kā pārvaldīt saites, pārveidojot HTML uz tekstu Go lietojumprogrammās?

package main

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

func main() {
    htmlContent := `
    
        
            

Apskatiet mūsu produktu katalogs vai apmeklējiet mūsu atbalsta lapu.

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