[問題] 新手之想破頭想不出的迴圈

看板Python作者 (✩鍵✩盤✩戮✩)時間6年前 (2018/05/29 00:54), 6年前編輯推噓5(5016)
留言21則, 8人參與, 6年前最新討論串1/1
小弟正在學習爬蟲,想要爬下文章的標題跟日期,現在都已經能正確爬回我要的資訊 但目前卡在標題或日期只能擇其一,因爲只有排在最前的迴圈才會是無誤,第二個迴圈 會變成全部都值都是最後一個 範例如下..... 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://www.ptt.cc/bbs/Python/M.1527526472.A.95E.html

05/29 01:33, 6年前 , 1F
應該是一個date對應一個title,寫兩層迴圈會變成每個date都
05/29 01:33, 1F

05/29 01:34, 6年前 , 2F
讀了所有date的title,但是我想不透的是這樣應該會有9行吧XD
05/29 01:34, 2F

05/29 01:34, 6年前 , 3F
改成一層迴圈
05/29 01:34, 3F

05/29 01:35, 6年前 , 4F
for s, s2 in zip(LN_date, LN_title):
05/29 01:35, 4F

05/29 01:36, 6年前 , 5F
date=s.text; title=s2.text; d='....'; content+=d
05/29 01:36, 5F

05/29 01:36, 6年前 , 6F
return content
05/29 01:36, 6F

05/29 01:37, 6年前 , 7F
小弟也新手 有錯請指正><
05/29 01:37, 7F
謝謝sr29分享的寫法,是work的!又學到了QQ寫程式真的是很有趣的東西,研究半天的東 西 只要加上zip就解決了....當然三個字的背後又是一大堆函數 哈哈

05/29 03:35, 6年前 , 8F
content的層級擺錯了? 你的寫法 data必定等於內層迴圈
05/29 03:35, 8F

05/29 03:36, 6年前 , 9F
的最後一次執行結果
05/29 03:36, 9F

05/29 09:13, 6年前 , 10F
content += data 往前縮排 到 for span那行吧
05/29 09:13, 10F
縮排後變成只有輸出一行資訊,標題跟日期 都是Source的最後一筆 謝謝大家熱心解答 ※ 編輯: KeyBoardKill (110.50.147.68), 05/29/2018 14:32:04

05/29 17:21, 6年前 , 11F
content += data往後才對吧
05/29 17:21, 11F

05/29 18:29, 6年前 , 12F
樓上,我也試過~但是不work
05/29 18:29, 12F

05/30 00:46, 6年前 , 13F
for i in range(0, len(LatestNews_date)):
05/30 00:46, 13F

05/30 00:47, 6年前 , 14F
date = LatestNews_date[i].text
05/30 00:47, 14F

05/30 00:48, 6年前 , 15F
title = LatestNews_title[i].text
05/30 00:48, 15F

05/30 10:05, 6年前 , 16F
樓上這個是比較容易的寫法,zip可能有點難懂
05/30 10:05, 16F

05/30 10:05, 6年前 , 17F
試著學習用 index 去存取 array 元素可以學到很多變化
05/30 10:05, 17F

05/30 10:06, 6年前 , 18F
可能你一開始接觸就是python,沒有接觸到用index的for
05/30 10:06, 18F

06/08 22:08, 6年前 , 19F
推ZIP寫法。真的超方便。不過沒接觸過其他語言的話,
06/08 22:08, 19F

06/08 22:08, 6年前 , 20F
基本index的還是要了解,不然結構一複雜起來真的會不
06/08 22:08, 20F

06/08 22:08, 6年前 , 21F
知怎抓問題
06/08 22:08, 21F
文章代碼(AID): #1R33H8bU (Python)