Hướng dẫn how do you convert html tags to text in python? - làm cách nào để chuyển đổi thẻ html thành văn bản trong python?

Tôi đang cố gắng chuyển đổi một khối HTML thành văn bản bằng Python.

Input:

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa

Consectetuer adipiscing elit. Some Link Aenean commodo ligula eget dolor. Aenean massa

Aenean massa.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa

Consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa

Đầu ra của bạn:

Lorem Ipsum Dolor SIT AMET, Lãnh sự quảng cáo elit. Aennean Commodo Ligula Eget Dolor. Aenean Massa

Lãnh đạo adipiscing elit. Một số liên kết Aenenan Commodo Ligula Eget Dolor. Aenean Massa

AENEAN MASSA.LOREM IPSUM DOLOR SIT AMET, Aennean Commodo Ligula Eget Dolor. Aenean Massa

Lorem Ipsum Dolor SIT AMET, Lãnh sự quảng cáo elit. Aennean Commodo Ligula Eget Dolor. Aenean Massa

Lãnh đạo adipiscing elit. Một số liên kết Aenenan Commodo Ligula Eget Dolor. Aenean Massa

AENEAN MASSA.LOREM IPSUM DOLOR SIT AMET, Aennean Commodo Ligula Eget Dolor. Aenean Massa

#!/usr/bin/env python

import urllib2
import html2text
from BeautifulSoup import BeautifulSoup

soup = BeautifulSoup(urllib2.urlopen('http://example.com/page.html').read())

txt = soup.find('div', {'class' : 'body'})

print(html2text.html2text(txt))

Lãnh đạo adipiscing elit. Aennean Commodo Ligula Eget Dolor. Aenean Massa

Hướng dẫn how do you convert html tags to text in python? - làm cách nào để chuyển đổi thẻ html thành văn bản trong python?

Tôi thử mô -đun

from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())
3 mà không thành công nhiều:

Đối tượng

from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())
4 tạo ra khối HTML ở trên. Tôi muốn chuyển đổi nó để chuyển đổi và in nó trên màn hình.21 gold badges78 silver badges119 bronze badges

Rob BednarkFeb 4, 2013 at 19:55

24.1K21 Huy hiệu vàng78 Huy hiệu bạc119 Huy hiệu BrozeAaron Bandelli

Đã hỏi ngày 4 tháng 2 năm 2013 lúc 19: 52 gold badges11 silver badges16 bronze badges

1

Aaron Bandelliaron Bandelli

from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())

output:

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Some Link Aenean commodo ligula eget dolor. Aenean massa
Aenean massa.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa

1.1182 huy hiệu vàng11 Huy hiệu bạc16 Huy hiệu đồng

print(soup.get_text('\n'))

from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())
5 đầu ra những gì bạn muốn:

soup.get_text().replace('\n','\n\n')

Hướng dẫn how do you convert html tags to text in python? - làm cách nào để chuyển đổi thẻ html thành văn bản trong python?

Tôi thử mô -đun

from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())
3 mà không thành công nhiều:

Đối tượng

from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())
4 tạo ra khối HTML ở trên. Tôi muốn chuyển đổi nó để chuyển đổi và in nó trên màn hình.21 gold badges78 silver badges119 bronze badges

Rob BednarkFeb 4, 2013 at 20:06

3

24.1K21 Huy hiệu vàng78 Huy hiệu bạc119 Huy hiệu Broze

from html.parser import HTMLParser

class HTMLFilter(HTMLParser):
    text = ""
    def handle_data(self, data):
        self.text += data

f = HTMLFilter()
f.feed(data)
print(f.text)

Hướng dẫn how do you convert html tags to text in python? - làm cách nào để chuyển đổi thẻ html thành văn bản trong python?

Đã hỏi ngày 4 tháng 2 năm 2013 lúc 19: 5

Aaron Bandelliaron Bandelli17 gold badges82 silver badges81 bronze badges

1.1182 huy hiệu vàng11 Huy hiệu bạc16 Huy hiệu đồngApr 24, 2019 at 8:03

from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())
5 đầu ra những gì bạn muốn:FrBrGeorge

Để giữ Newlines:5 silver badges7 bronze badges

4

Để giống hệt với ví dụ của bạn, bạn có thể thay thế một dòng mới bằng hai dòng mới:

import re

data = """

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa

Consectetuer adipiscing elit. Some Link Aenean commodo ligula eget dolor. Aenean massa

Aenean massa.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa

Consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa

""" data = re.sub(r'<.*?>', '', data) print(data)

Đã trả lời ngày 4 tháng 2 năm 2013 lúc 20: 0

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Some Link Aenean commodo ligula eget dolor. Aenean massa
Aenean massa.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa

Hướng dẫn how do you convert html tags to text in python? - làm cách nào để chuyển đổi thẻ html thành văn bản trong python?

Tôi thử mô -đun

from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())
3 mà không thành công nhiều:

Đối tượng

from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())
4 tạo ra khối HTML ở trên. Tôi muốn chuyển đổi nó để chuyển đổi và in nó trên màn hình.21 gold badges78 silver badges119 bronze badges

Rob BednarkFeb 4, 2013 at 20:02

Hướng dẫn how do you convert html tags to text in python? - làm cách nào để chuyển đổi thẻ html thành văn bản trong python?

24.1K21 Huy hiệu vàng78 Huy hiệu bạc119 Huy hiệu BrozeATOzTOA

Đã hỏi ngày 4 tháng 2 năm 2013 lúc 19: 522 gold badges93 silver badges116 bronze badges

3

Aaron Bandelliaron Bandelli

from bs4 import BeautifulSoup

def parse_html(html):
    elem = BeautifulSoup(html, features="html.parser")
    text = ''
    for e in elem.descendants:
        if isinstance(e, str):
            text += e.strip()
        elif e.name in ['br',  'p', 'h2', 'h2', 'h3', 'h4','tr', 'th']:
            text += '\n'
        elif e.name == 'li':
            text += '\n- '
    return text


1.1182 huy hiệu vàng11 Huy hiệu bạc16 Huy hiệu đồng

from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())
5 đầu ra những gì bạn muốn:Mar 18, 2021 at 11:57

Để giữ Newlines:Andreas

Để giống hệt với ví dụ của bạn, bạn có thể thay thế một dòng mới bằng hai dòng mới:18 silver badges28 bronze badges

Đã trả lời ngày 4 tháng 2 năm 2013 lúc 20: 0

#!/usr/bin/env python

import urllib2
import html2text
from BeautifulSoup import BeautifulSoup

soup = BeautifulSoup(urllib2.urlopen('http://example.com/page.html').read())

txt = soup.find('div', {'class' : 'body'})

print(html2text.html2text(txt))
0

Có thể sử dụng tiêu chuẩn Python _______26:Feb 4, 2013 at 20:11

Hướng dẫn how do you convert html tags to text in python? - làm cách nào để chuyển đổi thẻ html thành văn bản trong python?

t-8cht-8cht-8ch

Julienc12 silver badges18 bronze badges

4

Phim thương hiệu vàng 18K1782 Huy hiệu bạc81 Huy hiệu đồng

#!/usr/bin/env python

import urllib2
import html2text
from BeautifulSoup import BeautifulSoup

soup = BeautifulSoup(urllib2.urlopen('http://example.com/page.html').read())

txt = soup.find('div', {'class' : 'body'})

print(html2text.html2text(txt))
1

Đã trả lời ngày 24 tháng 4 năm 2019 lúc 8: 0

Frbgeenguargegegegegegegege

5005 huy hiệu bạc7 huy hiệu đồngJun 3, 2020 at 18:45

Bạn có thể sử dụng một biểu thức thông thường, nhưng nó không được khuyến khích. Mã sau đây xóa tất cả các thẻ HTML trong dữ liệu của bạn, cung cấp cho bạn văn bản:Mark Chackerian

Đầu ra6 gold badges105 silver badges98 bronze badges

Đã trả lời ngày 4 tháng 2 năm 2013 lúc 20: 0

#!/usr/bin/env python

import urllib2
import html2text
from BeautifulSoup import BeautifulSoup

soup = BeautifulSoup(urllib2.urlopen('http://example.com/page.html').read())

txt = soup.find('div', {'class' : 'body'})

print(html2text.html2text(txt))
2

AtoztoaatoztoaSep 15, 2020 at 9:50

Hướng dẫn how do you convert html tags to text in python? - làm cách nào để chuyển đổi thẻ html thành văn bản trong python?

33,8K22 Huy hiệu vàng93 Huy hiệu bạc116 Huy hiệu đồngdermasmid

Vấn đề chính là cách bạn giữ một số định dạng cơ bản. Đây là cách tiếp cận tối thiểu của riêng tôi đối với các dòng và đạn mới của Kee. Tôi chắc chắn đó không phải là giải pháp cho mọi thứ bạn muốn giữ nó là điểm khởi đầu:4 silver badges7 bronze badges

Trên một dòng mới cho _

from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())
7 và một dòng mới với _
from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())
8 trước văn bản cho các phần tử _
from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())
9

Input:

#!/usr/bin/env python

import urllib2
import html2text
from BeautifulSoup import BeautifulSoup

soup = BeautifulSoup(urllib2.urlopen('http://example.com/page.html').read())

txt = soup.find('div', {'class' : 'body'})

print(html2text.html2text(txt))
3

Output:

#!/usr/bin/env python

import urllib2
import html2text
from BeautifulSoup import BeautifulSoup

soup = BeautifulSoup(urllib2.urlopen('http://example.com/page.html').read())

txt = soup.find('div', {'class' : 'body'})

print(html2text.html2text(txt))
4
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Some Link Aenean commodo ligula eget dolor. Aenean massa
Aenean massa.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa

Đã trả lời ngày 18 tháng 3 năm 2021 lúc 11: 5Oct 9, 2020 at 20:38

Andreasandreasemehex

90818 Huy hiệu bạc28 Huy hiệu đồng9 gold badges53 silver badges93 bronze badges

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Some Link Aenean commodo ligula eget dolor. Aenean massa
Aenean massa.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
0 đặt một dòng mới giữa các đoạn văn.

#!/usr/bin/env python

import urllib2
import html2text
from BeautifulSoup import BeautifulSoup

soup = BeautifulSoup(urllib2.urlopen('http://example.com/page.html').read())

txt = soup.find('div', {'class' : 'body'})

print(html2text.html2text(txt))
6

Đã trả lời ngày 4 tháng 2 năm 2013 lúc 20: 1Sep 25, 2014 at 20:47

1

2.51512 Huy hiệu bạc18 Huy hiệu đồng

#!/usr/bin/env python

import urllib2
import html2text
from BeautifulSoup import BeautifulSoup

soup = BeautifulSoup(urllib2.urlopen('http://example.com/page.html').read())

txt = soup.find('div', {'class' : 'body'})

print(html2text.html2text(txt))
7

Tôi thích câu trả lời không phụ thuộc của @Dec 12, 2017 at 22:58

Xem bình luận cho việc sử dụng.Sarah Messer

Cuộc trò chuyện này tất cả các văn bản bên trong

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Some Link Aenean commodo ligula eget dolor. Aenean massa
Aenean massa.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
1, theo lý thuyết có thể bao gồm các thẻ
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Some Link Aenean commodo ligula eget dolor. Aenean massa
Aenean massa.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
3 và _______34. Furationing có thể được điều trị bằng cách mở rộng mô hình như được hiển thị cho
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Some Link Aenean commodo ligula eget dolor. Aenean massa
Aenean massa.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
1 - tức là. Đặt các biến thể hiện _______36 hoặc
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Some Link Aenean commodo ligula eget dolor. Aenean massa
Aenean massa.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
23 silver badges41 bronze badges

Đã trả lời ngày 3 tháng 6 năm 2020 lúc 18: 4

Mark Chackerianmark Chackerian

#!/usr/bin/env python

import urllib2
import html2text
from BeautifulSoup import BeautifulSoup

soup = BeautifulSoup(urllib2.urlopen('http://example.com/page.html').read())

txt = soup.find('div', {'class' : 'body'})

print(html2text.html2text(txt))
8

Huy hiệu vàng 20,5k6

Có một số điều tốt đẹp ở đây, và tôi cũng có thể ném vào giải pháp của mình:Oct 29, 2021 at 11:39

Hướng dẫn how do you convert html tags to text in python? - làm cách nào để chuyển đổi thẻ html thành văn bản trong python?

Đã trả lời ngày 15 tháng 9 năm 2020 lúc 9: 5quick

Dermasmiddermasmid10 silver badges17 bronze badges

3214 Huy hiệu bạc7 Huy hiệu đồng

#!/usr/bin/env python

import urllib2
import html2text
from BeautifulSoup import BeautifulSoup

soup = BeautifulSoup(urllib2.urlopen('http://example.com/page.html').read())

txt = soup.find('div', {'class' : 'body'})

print(html2text.html2text(txt))
9

Gazpacho có thể là một lựa chọn tốt cho việc này!

Lorem Ipsum Dolor SIT AMET, Lãnh sự quảng cáo elit. Aennean Commodo Ligula Eget Dolor. Aenean Massa

Lãnh đạo adipiscing elit. Một số liên kết Aenenan Commodo Ligula Eget Dolor. Aenean Massa

AENEAN MASSA.LOREM IPSUM DOLOR SIT AMET, Aennean Commodo Ligula Eget Dolor. Aenean Massa

Lorem Ipsum Dolor SIT AMET, Lãnh sự quảng cáo elit. Aennean Commodo Ligula Eget Dolor. Aenean Massa

Lãnh đạo adipiscing elit. Aennean Commodo Ligula Eget Dolor. Aenean Massa

Đã trả lời ngày 19 tháng 8 lúc 13: 0Aug 19 at 13:06

Chiccherachiccherachicchera

Phim huy hiệu bạc 211 Huy hiệu đồng1 silver badge2 bronze badges

Một bước hai bước ____ 38 được thực hiện với việc vệ sinh đánh dấu trước khi chuyển đổi thành văn bản thuần túy.

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Some Link Aenean commodo ligula eget dolor. Aenean massa
Aenean massa.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
Consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa
8-based approach with markup sanitizing before converting to plain text.

Kinh thánh chấp nhận ether một đường dẫn đến một tệp HTML hoặc stdin đường ống.

sẽ loại bỏ các khối tập lệnh và tất cả các văn bản không thể không có thể có thể có thể. Bạn có thể định cấu hình phiên bản LXML Cleaner cho phù hợp với nhu cầu của bạn.

from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())
0

Đã trả lời ngày 25 tháng 10 năm 2021 lúc 13: 4Oct 25, 2021 at 13:48

Hướng dẫn how do you convert html tags to text in python? - làm cách nào để chuyển đổi thẻ html thành văn bản trong python?

CCPIZACCPIZAccpizza

26.9K15 Huy hiệu vàng158 Huy hiệu bạc155 Huy hiệu đồng15 gold badges158 silver badges155 bronze badges

Tôi đã gặp phải vấn đề tương tự bằng cách sử dụng Scrapy, bạn có thể thử điều này để cài đặt.

from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())
1

Đã trả lời ngày 28 tháng 6 lúc 23: 4Jun 28 at 23:46

Jaype Tanjaypee tanJaypee Tan

Huy hiệu 931 bạc1 silver badge10 bronze badges

from bs4 import BeautifulSoup
soup = BeautifulSoup(html)
print(soup.get_text())
2

Đã trả lời ngày 18 tháng 1 lúc 8: 0Jan 18 at 8:02

Hướng dẫn how do you convert html tags to text in python? - làm cách nào để chuyển đổi thẻ html thành văn bản trong python?

1

Chúng ta có thể chuyển đổi HTML thành Python không?

Cách sử dụng bảng HTML sang công cụ chuyển đổi Python. Dán đầu vào bảng HTML của bạn vào hộp đầu vào bên trái và nó sẽ tự động liên hệ với nó vào Python. Đầu ra Python là hộp bên phải.Paste your HTML Table input into the left input box and it will automatically convert it into Python. The Python output is the box to the right.

Bạn có thể đọc một tệp HTML trong Python không?

Nếu bạn muốn đọc tệp HTML dưới dạng chuỗi, bạn cần chuyển đổi kết quả bằng phương thức Decode () của Python: Nhập Urllib.yêu cầu như r.Trang = r.you need to convert the result using Python's decode() method: import urllib. request as r. page = r.