Widziałem wiele pytań na temat usuwania znaczników HTML z ciągów, ale wciąż nie jestem pewien, jak należy postępować z moją konkretną sprawą.Usuwanie znaczników graficznych html i wszystkich pośrednich z ciągu
Widziałem, że wiele postów odradza używanie wyrażeń regularnych do obsługi HTML, ale podejrzewam, że mój przypadek uzasadnia rozważne obejście tej zasady.
Próbuję parsować pliki PDF i udało mi się przekonwertować każdą stronę z mojego przykładowego pliku PDF na ciąg tekstu UTF-32. Gdy pojawiają się obrazy, wstawiany jest znacznik w stylu HTML, który zawiera nazwę i lokalizację obrazu (który jest zapisany w innym miejscu).
W oddzielnej części mojej aplikacji muszę pozbyć się tych tagów graficznych. Ponieważ jesteśmy tylko zajmujących się tagami obrazu, podejrzewam, że korzystanie z regex może być uzasadnione.
Moje pytanie jest dwojaki:
- powinienem użyć wyrażenia regularnego, aby usunąć te tagi, czy mam nadal korzystać z modułu parsowania HTML, takich jak BeautifulSoup?
- Których konstrukcji regex lub BeautifulSoup powinienem użyć? Innymi słowy, jak mam to zakodować?
Dla jasności, znaczniki są skonstruowane jako <img src="/path/to/file"/>
Dzięki!
Czy istnieje inny plik HTML w tym pliku? Czy jest to dosłownie tylko zwykły tekst i znaczniki '? – senderle
@senderle Nie, nie ma kodu HTML poza tagami , stąd moje wahanie w używaniu pełnowartościowej biblioteki HTML. Format jest * zawsze * jak opisuję to powyżej. – blz
Właśnie napisałem odpowiedź, ale zastanawiałem się, czy rzeczywiście istnieje apostrof po zamknięciu> każdego obrazu, czy też był to literówka? – joshcartme