我是python的新手,无法从输出中删除html标记。我想删除标签及其中的内容。我还要删除p标签。有什么建议?
import urllib2
from bs4 import BeautifulSoup
# Ask user to enter URL
url = raw_input("Please enter a valid URL: ")
# Make sure file is clear for new content
open('ctp_output.txt', 'w').close()
# Open txt document for output
txt = open('ctp_output.txt', 'w')
# Parse HTML of article, aka making soup
soup = BeautifulSoup(urllib2.urlopen(url).read())
# retrieve all of the paragraph tags
tags = soup('p')
txt.write(str(tag) + '\n' + '\n')
# Close txt file with new content added
txt.close()
答案 0 :(得分:0)
使用get_text()
函数而不是字符串表示形式(str(tag)
)从标记中检索文本部分。
在上面的代码中,更改将是替换此行:
txt.write(str(tag) + '\n' + '\n')
使用:
txt.write(tag.get_text() + '\n' + '\n')