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