小弟正在學習爬蟲,想要爬下文章的標題跟日期,現在都已經能正確爬回我要的資訊
但目前卡在標題或日期只能擇其一,因爲只有排在最前的迴圈才會是無誤,第二個迴圈
會變成全部都值都是最後一個
範例如下.....
Ex Web source
[2018//05/25] new1
[2018//05/26] new2
[2018//05/27] new3
這是我重點部份的code
for span in LatestNews_date:
for span2 in LatestNews_title:
date = span.text
title = span2.text
data = '最新公告:{}{}\n'.format(date, title)
content += data
return content
但迴圈出來的會變成
最新公告:[2018//05/27] new1
最新公告:[2018//05/27] new2
最新公告:[2018//05/27] new3
標題的部分都會是正常的,但日期只會將Source的最後的日期全部套成一樣的
我看了好久,還是想不通....能給點提示嗎><"謝謝
作者:
sr29 (owo)
2018-05-29 01:33:00應該是一個date對應一個title,寫兩層迴圈會變成每個date都讀了所有date的title,但是我想不透的是這樣應該會有9行吧XD改成一層迴圈for s, s2 in zip(LN_date, LN_title):date=s.text; title=s2.text; d='....'; content+=dreturn content小弟也新手 有錯請指正><
content的層級擺錯了? 你的寫法 data必定等於內層迴圈的最後一次執行結果
content += data 往前縮排 到 for span那行吧
作者: shimachokong 2018-05-30 00:46:00
for i in range(0, len(LatestNews_date)):date = LatestNews_date[i].texttitle = LatestNews_title[i].text
樓上這個是比較容易的寫法,zip可能有點難懂試著學習用 index 去存取 array 元素可以學到很多變化可能你一開始接觸就是python,沒有接觸到用index的for
作者: windclara (null) 2018-06-08 22:08:00
推ZIP寫法。真的超方便。不過沒接觸過其他語言的話,基本index的還是要了解,不然結構一複雜起來真的會不知怎抓問題