Python爬蟲如何爬取span和span中間的內容并分別存入字典里?
問題描述
我想把房屋概況分別抓出來并分別作為獨立的列存儲進字典里,但是行內元素沒有辦法直接用for循環摳出來。這是我的代碼:
soup.select(’.house-info li’)[1].text.strip()
這是網頁html代碼:
<li><span class='info-tit'>房屋概況:</span>住宅<span class='splitline'>|</span>1室1廳1衛<span class='splitline'>|</span><span>46m2</span><span class='splitline'>|</span> (高層)/共18層<span class='splitline'>|</span>南北<span class='splitline'>|</span> 豪華裝修 </li>
問題解答
回答1:其實還是很有簡單的,你看這個還是有規律的,規律在于有分隔符|,我寫了個DEMO
something = ’’’<li><span class='info-tit'>房屋概況:</span>住宅 <span class='splitline'>|</span>1室1廳1衛<span class='splitline'>|</span><span>46m2</span><span class='splitline'>|</span> (高層)/共18層<span class='splitline'>|</span>南北<span class='splitline'>|</span> 豪華裝修 </li>’’’;soup = BeautifulSoup(something, ’lxml’)plaintext = soup.select(’li’)[0].get_text().strip()
通過get_text()得到內在所有內容,然后去除空格。后面你就用split進行分割吧,后面的不寫了。如果有問題再交流。
回答2:我感覺這個html代碼寫錯了呢,標簽的內容文本在標簽外面房屋概況:
46m2
回答3:innerText
回答4:你這種情況,我覺得用 for 循環加上正則表達式是最方便的,如果所有模版都是這樣固定的話
回答5:用pyquery吧
from pyquery import PyQuery as Q
Q(text).find(’.house-info li’).text()
相關文章:
1. css3 - 純css實現點擊特效2. javascript - 網頁打印頁另存為pdf的代碼一個問題3. css - chrome下a標簽嵌套img 顯示會多個小箭頭?4. vim - docker中新的ubuntu12.04鏡像,運行vi提示,找不到命名.5. mysql - 在不允許改動數據表的情況下,如何優化以varchar格式存儲的時間的比較?6. java中返回一個對象,和輸出對像的值,意義在哪兒7. docker網絡端口映射,沒有方便點的操作方法么?8. javascript - Img.complete和img.onload判斷圖片加載完成有什么區別?9. mysql 為什么主鍵 id 和 pid 都市索引, id > 10 走索引 time > 10 不走索引?10. javascript - 有適合開發手機端Html5網頁小游戲的前端框架嗎?
