作者KeyBoardKill (✩鍵✩盤✩戮✩)
看板Python
標題[問題] 新手之想破頭想不出的迴圈
時間Tue May 29 00:54:27 2018
小弟正在學習爬蟲,想要爬下文章的標題跟日期,現在都已經能正確爬回我要的資訊
但目前卡在標題或日期只能擇其一,因爲只有排在最前的迴圈才會是無誤,第二個迴圈
會變成全部都值都是最後一個
範例如下.....
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的最後的日期全部套成一樣的
我看了好久,還是想不通....能給點提示嗎><"謝謝
--
◢ ◣
● █
≡◥◣ ◢
◣
】 。 \。【 這個板需要更高竿的酸民
● //﹀\\● ◥
◤
】 ╰═╯【 ◤
◢◥ ◤◣
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.167.42.236
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1527526472.A.95E.html
1F:推 sr29: 應該是一個date對應一個title,寫兩層迴圈會變成每個date都05/29 01:33
2F:→ sr29: 讀了所有date的title,但是我想不透的是這樣應該會有9行吧XD05/29 01:34
3F:→ sr29: 改成一層迴圈05/29 01:34
4F:→ sr29: for s, s2 in zip(LN_date, LN_title):05/29 01:35
5F:→ sr29: date=s.text; title=s2.text; d='....'; content+=d05/29 01:36
6F:→ sr29: return content05/29 01:36
7F:→ sr29: 小弟也新手 有錯請指正><05/29 01:37
謝謝sr29分享的寫法,是work的!又學到了QQ寫程式真的是很有趣的東西,研究半天的東
西 只要加上zip就解決了....當然三個字的背後又是一大堆函數 哈哈
8F:→ aszx4510: content的層級擺錯了? 你的寫法 data必定等於內層迴圈05/29 03:35
9F:→ aszx4510: 的最後一次執行結果05/29 03:36
10F:→ MOONY135: content += data 往前縮排 到 for span那行吧05/29 09:13
縮排後變成只有輸出一行資訊,標題跟日期
都是Source的最後一筆
謝謝大家熱心解答
※ 編輯: KeyBoardKill (110.50.147.68), 05/29/2018 14:32:04
11F:推 tsoahans: content += data往後才對吧 05/29 17:21
12F:→ KeyBoardKill: 樓上,我也試過~但是不work 05/29 18:29
13F:推 shimachokong: for i in range(0, len(LatestNews_date)): 05/30 00:46
14F:→ shimachokong: date = LatestNews_date[i].text 05/30 00:47
15F:→ shimachokong: title = LatestNews_title[i].text 05/30 00:48
16F:推 mars90226: 樓上這個是比較容易的寫法,zip可能有點難懂 05/30 10:05
17F:→ mars90226: 試著學習用 index 去存取 array 元素可以學到很多變化 05/30 10:05
18F:→ mars90226: 可能你一開始接觸就是python,沒有接觸到用index的for 05/30 10:06
19F:推 windclara: 推ZIP寫法。真的超方便。不過沒接觸過其他語言的話, 06/08 22:08
20F:→ windclara: 基本index的還是要了解,不然結構一複雜起來真的會不 06/08 22:08
21F:→ windclara: 知怎抓問題 06/08 22:08