HTML na tekst: pobieranie samych słów z pliku strony internetowej
Czasami nie chcesz dokumentu. Chcesz ściany zdań. Dane uczące dla klasyfikatora, korpusu
do modelowania tematycznego, fragmenty do indeksu osadzania, dane wejściowe do podsumowania, które ignoruje formatowanie
w każdym razie – we wszystkich, w każdym # i | i ** to postać
coś Cię kosztuje i nic nie kupuje.
Właśnie po to jest ta strona. Wpadnij A .html lub .htm plik i otrzymasz z powrotem plik
czytelną prozę bez znaczników — bez tagów, bez atrybutów, bez składni. Bezpłatnie, bez rejestracji, limit 50 MB,
i plik nie jest później nigdzie przechowywany. Jeśli zamiast tego chcesz zachować hierarchię nagłówków i tabele,
HTML do Markdown jest rodzeństwo
stronę, a przełącznik formatu powyżej przenosi plik na nią bez konieczności ponownego przesyłania.
Co właściwie „usuwanie tagów” musi być dobre
Naiwne usuwanie wszystkiego pomiędzy nawiasami ostrymi powoduje powstawanie śmieci i warto zrozumieć, dlaczego — to jest różnica między użytecznym tekstem a bałaganem.
HTML zawiera elementy blokowe i wbudowane, które wymagają odmiennego traktowania. Kiedy A
</p> zamyka się i następny <p> otwiera się, to jest granica akapitu i
musi stać się podziałem linii. Kiedy A </strong> kończy się w połowie zdania, to nie jest a
granicy — wstawienie tam znaku nowej linii spowodowałoby przecięcie zdania na pół. Źle to zrozumiesz i koniec
z tekstem gdzie the quick brown fox pojawia się jako cztery oddzielne linie, ponieważ ktoś pogrubił
dwa słowa.
Druga połowa pracy to białe znaki. HTML zwija spacje, tabulatory i znaki nowej linii do jednego, kiedy
renderuje, więc źródło, które zostało ładnie wydrukowane z wcięciami, zawiera ogromne ilości białych znaków
to nigdy nie miało być widoczne. Właściwy HTML na tekst konwersja zwija go w ten sam sposób
sposób, w jaki robi to przeglądarka, dlatego wynik wygląda tak, jak wyglądała strona, a nie jak plik.
Elementy listy otrzymują własne linie, <br> staje się przerwą, a komórki tabeli zostają rozdzielone
zamiast trzymać się razem.
Podmioty, inteligentne cytaty i tajemnicze postacie
HTML koduje określone znaki, aby nie kolidowały ze znacznikami. & jest
ampersand. < jest znakiem mniejszości. jest przestrzenią nierozrywalną,
’ jest kręconym apostrofem, — to kreska. W przeglądarce ty
nigdy nie widzisz kodów – widzisz znaki.
W wyodrębnionym tekście niezdekodowane jednostki są trucizną. Tokenizer traktuje ’ jako kilka
symbole hałasu, dopasowanie słów kluczowych nie działa don’ti dowolny ciąg dalszy
porównanie cicho się rozpada. Zatem istoty są dekodowane w drodze na zewnątrz. Spacje nierozdzielające są spacjami podstępnymi
szczególnie dlatego, że wyglądają identycznie jak normalne przestrzenie na ekranie, a jednocześnie nie spełniają wszystkich wymagań
split(" ") piszesz; wydają się tutaj prawdziwymi przestrzeniami.
Kodowanie też jest warte uwagi. Większość nowoczesnych plików deklaruje <meta charset="utf-8">, ale
starsze strony i eksporty CMS są czasami ukryte pod nazwą Latin-1 lub Windows-1252. Jeśli Twoje dane wyjściowe mają
’ tam, gdzie powinien znajdować się apostrof, plik źródłowy kłamał na temat kodowania — zapisz go ponownie jako
UTF-8 z edytora tekstu i przekonwertuj ponownie.
Tekst, który nigdy nie miał zostać przeczytany
Strona zawiera więcej słów, niż pokazuje, a niektóre z nich pojawiają się podczas wyodrębniania:
- Nawigacja i tekst stopki. Etykiety menu, ścieżki nawigacyjne, „powrót na górę”. mapa witryny z osiemdziesięcioma linkami na dole. Tekst uzasadniony, semantycznie bezwartościowy. W zapisanym artykule prasowym może to przeważyć nad samym artykułem.
- Banery dotyczące plików cookie i kopia zgody. Dwieście słów z szablonu prawnego, które pojawiają się na każdą stronę, którą zapiszesz w tej domenie — co oznacza, że jeśli tworzysz korpus, wkrótce to zrobisz powielaj je tysiąc razy.
- Tekst alternatywny i etykiety ARIA. Czasami wartościowe (tekst alternatywny wykresu może być jedynym opis danych), czasem po prostu „obraz” powtórzony czterdzieści razy.
- Ukryte elementy. Rozpiętości przeznaczone tylko dla czytnika ekranu, zwinięte panele harmonijkowe i
<noscript>wszystkie wersje awaryjne zawierają prawdziwy tekst w źródle, nawet jeśli nigdy go nie widziałeś je renderowane.
Najlepsza praktyka, jeśli źródło ma znaczenie: zapisz stronę w trybie czytnika przeglądarki, który odrzuca większość meble, zanim trafią one do akt. W przeciwnym razie przekształć, a następnie przytnij głowę i ogon wyjście. Powtarzające się szablony są łatwe do wykrycia, jeśli wiesz, jak ich szukać, a ich wycinanie jest najwyższe wartość minutowa, którą spędzisz na całym rurociągu.
Dlaczego zwykły tekst jest lepszy od Markdown w pracy z NLP
To nie jest tylko „Markdown, ale prostsze” — w przypadku wielu potoków prawidłowym wyborem jest zwykły tekst i Markdown jest aktywnie gorszy.
- Osadzenia. Model osadzania koduje wszystko, co mu podasz, łącznie ze składnią. Rura znaki i skróty nagłówków przesuwają wektory bez dodawania znaczenia i wnikają w model limit wejściowy. Czysta proza osadza się bardziej czysto.
- Klasyfikatory i modele tematyczne. Bagaż słów i podejście TF-IDF
**word**iwordjako różne żetony, chyba że wstępnie je wyczyścisz. Pomiń całkowicie problem. - Indeksowanie wyszukiwania. Większość potoków indeksowych wymaga zdań. Karmienie ich Markdown oznacza zapisanie etapu usuwania izolacji, którego nie potrzebowałeś.
- Segmentacja zdań. Splittery takie jak spaCy czy NLTK działają na prozę. Składnia tabeli myli je, tworząc fragmenty.
- Budżet tokenowy. Na długiej stronie usunięcie znaczników znacząco zmniejsza liczbę tokenów — licznik pod wynikami pokazuje dokładnie, ile i porównuje oba formaty w tym samym plik jest eksperymentem uruchamianym jednym kliknięciem.
Plik, który masz, a strona, której nie masz
To narzędzie konwertuje przesłany plik HTML. Nie pobiera adresu URL. To rozróżnienie ma większe znaczenie niż się wydaje, ponieważ te dwie sytuacje zawodzą na różne sposoby.
Jeśli Twój plik pochodzi z funkcji Zapisz jako w przeglądarce, w witrynie zawierającej dużo kodu JavaScript, może nie zawierać prawie żadnego tekstu — tylko pusty div kontenera i skrypt pakietu, a rzeczywista treść została wygenerowana w czasie wykonywania i nigdy nie zapisywane na dysku. Otrzymasz prawie pusty wynik i będzie wyglądać, jakby konwerter się zepsuł. To nie; tych słów nie ma w pliku. Wyszukaj w źródle zdanie, które pamiętasz, aby potwierdzić.
Kiedy tak się stanie, użyj Web2Txt zamiast tego — pobiera aktywny adres URL, renderuje stronę i wyodrębnia wynik. Użyj tej strony, jeśli już to zrobiłeś plik: eksport e-mailowy, kompilacja dokumentacji, zrzut CMS, raport wygenerowany w formacie HTML, zarchiwizowany strona sprzed lat.
Typowe prace
- Budowa korpusu szkoleniowego lub ewaluacyjnego z folderu zarchiwizowanych stron, w którym ty potrzebujesz surowej prozy i spójnego formatowania w tysiącach dokumentów.
- Audyty czytelności i treści — liczba słów, poziom czytania, częstotliwość słów kluczowych. Wszystkie potrzebują one tekstu bez znaczników wypaczających liczby.
- Potokowanie w skryptach. Wchodzi zwykły tekst
grep,wc, za diff lub jednowierszowy Python bez uciekania przed dramatem. - Podsumowanie długiej strony gdzie nie dbasz o strukturę i wolisz wydawać tokeny na treści.
- Wyodrębnianie tekstu z pliku HTML do tłumaczeń lub transkrypcji, gdzie tłumacz chce zdań i niczego więcej.
Często zadawane pytania
Jak przekonwertować plik HTML na tekst?
Upuść .html lub .htm powyższy plik, a czytelny tekst pojawi się z usuniętymi wszystkimi znacznikami, skryptami i blokami stylów. Bezpłatnie, bez rejestracji, 50 MB na plik. Pobierz go jako .txt lub skopiuj go bezpośrednio do dowolnego miejsca, w którym potrzebne są słowa, a nie znaczniki.
Czy mogę przekonwertować aktywną stronę internetową, wklejając adres URL?
Nie na tej stronie — ta pobiera plik, który już masz. W przypadku adresu URL Web2Txt pobiera stronę i wyodrębnia ją bezpośrednio, co pozwala zaoszczędzić czas na operację zapisywania i przesyłania w obie strony. Użyj tej strony w przypadku zapisanych wcześniej stron, wyeksportowanych treści wiadomości e-mail lub kodu HTML wygenerowanego przez coś lokalnego.
Czy usuwa nawigację, reklamy i banery cookie?
Standardowe rozwiązania to raczej znane zagrożenie niż rozwiązany problem. Skrypty, style i tagi zawsze działają; to, czy pasek boczny, czy powiadomienie o plikach cookie liczy się jako treść, jest kwestią oceny, a zapisana strona przenosi to wszystko w tym samym DOM. Przejrzyj górną i dolną część wydruku — tam gromadzą się śmieci nawigacyjne.
Co dzieje się z linkami na stronie?
Tekst zakotwiczenia przetrwa w postaci słów, a znajdujące się za nim adresy URL nie. Zdanie „zobacz instrukcję instalacji” jest konwertowane dokładnie na to, bez wskazania, gdzie wskazywało. Jeśli miejsca docelowe mają znaczenie – budowanie mapy linków, sprawdzanie referencji wychodzących – korzystaj HTML do Markdown, który utrzymuje hrefs w składni nawiasów.
Dlaczego moje dane wyjściowe są pełne pustych linii i przypadkowych znaków?
Zwykle strona zapisana z nienaruszonym pełnym DOM — ukryte bloki szablonów, ładunki JSON-LD, wbudowane SVG i fragmenty analityczne znajdują się w tym znaczniku i wszystkie zawierają pewnego rodzaju tekst. Jednowierszowe wyrażenie regularne usuwa powtarzający się wzór po jego wykryciu lub zapisz ponownie stronę, korzystając z widoku czytnika przeglądarki i zamiast tego przekonwertuj ją.
Reszta apartamentu
File2Txt obsługuje każdy obsługiwany sformatuj z jednego pola przesyłania, jeśli wolisz tego nie wybierać. Lub przejdź bezpośrednio: PDF na tekst na dokumenty, Słowo na tekst dla DOCX, EPUB na tekst do e-booków i CSV na tekst dla danych rozdzielonych.
Praca z kodem? The GitHub na konwerter tekstu, the GitLab konwerter i konwerter katalogów lokalnych spłaszczyć całość projekt w jeden plik. I ten przewodnik obejmuje szerszą kwestię przygotowania dokumentów do LLM.
Repo2Txt jest zbudowany i utrzymywany przez v12hero, niezależny programista tworzący aplikacje natywne i internetowe dbające o prywatność.