繁体   English   中英

如何从python中的文本列表中的文本中间删除\\ n

[英]How to remove \n from the middle of texts in a list of texts in python

我在网页上搜索了源代码中包含以下表单的标题列表:

<h2 class="story-heading"><a href="somelink.html">Crash Highlights
Indonesia’s Poor Air
Safety Record</a><span class="product-label theme-nyt-now "><span class="visually-hidden">NYT Now</span><i class="icon dot-logo-icon"></i></span></h2>

我只想要文字。

我得到以下列表:

[u'Crash Highlights\nIndonesia\u2019s Poor Air\nSafety RecordNYT Now', u'Palestine Joins\nHague Criminal\nCourt, Risking\nU.S. SanctionsNYT Now', ... ]

每个字符串都有"\\n"字符,以"NYT Now"结尾如何删除NYT Now? 据我所知, get_text()只应该检索<a>选项卡中的函数

这是我的代码:

url="<website link>"
html = urllib2.urlopen(url)
soup = BeautifulSoup(html,'lxml')

headings_list=[]

for heading in soup.find_all(class_="story-heading"):
    for text in heading.find_all('a'):
        headings_list.append(heading.get_text().strip())

print headings_list

我认为这应该做你想要的:

heading.get_text().replace('\n',' ').replace('NYT Now', '')

采用

headings_list.append(heading.get_text().strip()[:-7])

采取没有最后7个字符的标题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM