1
我需要一些帮助,学习像程序员一样思考。python:将字符串的部分分配给变量
我正在使用beautifulsoup4来抓取内容。我想在一个p标签里面有三个字符串。前两个是子标签的字符串。第三个是p选项卡的字符串。它看起来像这样:
<p>
<a href="some stuff">First String</a>
<br/>
<a href="some stuff">Second String</a>
<br/>
Third String
<br/>
unimportant fourth string
<br/>
</p>
我想每个字符串分配给其自己的变量,但我无法弄清楚如何将它们分开。似乎我应该能够分割成线,然后分配每一行。我的代码目前看起来像这样:
events=body.find_all('p') #find all the p tags
for strings in events[3]: #get the first of the p tags i'm interested in
if strings.string:
all= str(strings.string).splitlines() #puts each string on its own line
for line in all: #shouldn't I be able to get each line by its index?
print line
无论我尝试什么,我会得到所有三行。我花了几个小时尝试不同的事情,我希望有人在这里能告诉我正确的思考方式。
感谢
HTML不换行分隔,所以你不能依靠换行符解析它。你应该得到每个元素的文本节点。 – Keith