我已经在python中编写脚本来从一些html元素中删除一些文本。脚本现在可以解析它。但是,问题是结果看起来很奇怪,它们之间有一堆空格。我该如何解决它?任何帮助将不胜感激。无法删除抓取的文本之间的空间
这是HTML元素的文本应该被刮掉:
html="""
<div class="postal-address">
<p>11525 23 AVE</p>
<p>EDMONTON,
AB
,
T6J 4T3
</p>
<p><a rel="nofollow" href="mailto:[email protected]">[email protected]</a></p>
<p><a rel="nofollow" href="http://www.something.org" target="_blank">Visit our Web Site</a></p>
</div>
"""
这是我与尝试脚本:我有
from lxml.html import fromstring
root = fromstring(html)
address = [item.text for item in root.cssselect(".postal-address p")]
print(address)
结果:
11525 23 AVE, EDMONTON,\n AB\n ,\n T6J 4T3\n
预期结果:
11525 23 AVE EDMONTON, AB, T6J 4T3
我试着在这一行中应用.strip()
和.replace("\n","")
[item.text for item in root.cssselect(".postal-address p")]
,但它抛出一个错误,显示none type object
。
顺便说一句,我不希望有任何解决方案与regex
有关。提前致谢。
非常感谢先生安德森,为这样一个有效的答案。你总是特定于所需的输出。再次感谢。 – SIM