[問題] 如何判斷網頁是否有更新?

看板AndroidDev作者 (好人超)時間9年前 (2015/06/05 01:14), 9年前編輯推噓3(3011)
留言14則, 6人參與, 最新討論串1/2 (看更多)
我目前在寫個app 用jsoup從店家網頁把商品、價格抓下來 http://www.landtop.com.tw/products.php?types=1 抓資料與分析已經完成了,接下來我想做的是: 偵測這次抓到的網頁,與上次抓到的網頁是否有分別 (店家是否有更新網頁) 1.如果有分別,就抓出哪些手機是新上架、降價、漲價等 2.如果沒有分別,那就什麼都不做 不過問題就是,上次抓到的資料,我應該要怎麼儲存下來、存成什麼型式 才能跟這次抓到的資料做比較、分析呢? 我最困擾的是,不知道要怎麼判斷「店家是否有更新網頁」 這樣就會變成 1.第一次開app,抓到某手機價格為20000,判斷為「新上架」 (店家更新網頁) 2.第二次開app,抓到同手機價格變為19000,判斷為「降價」 3.立刻第三次開app,抓到同手機價格變為19000,判斷為「不變」 但事實上第二次與第三次開啟時,店家並沒有更新網頁 所以第三次開app時,應直接取得第二次開啟的判斷結果,得到「降價」才對 請問這種需求,應該要怎麼做比較好呢?謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.137.66.159 ※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1433438050.A.7F2.html

06/05 09:43, , 1F
想辦法存時間,商品名稱,日期
06/05 09:43, 1F

06/05 10:31, , 2F
沒有分別之後,再判斷資料取得日期,超過多久,就判斷不變
06/05 10:31, 2F

06/05 10:33, , 3F
另外我覺得不應該以開啟app作為更新判斷的時間點
06/05 10:33, 3F

06/05 10:34, , 4F
一秒前開啟app為「新上架」 下秒開啟app為「不變」
06/05 10:34, 4F

06/05 10:35, , 5F
個人認為應該為周間為判斷點
06/05 10:35, 5F

06/05 10:35, , 6F
*以
06/05 10:35, 6F
請問週間的意思是什麼呢? 目前我不太確定店家更新資料的週期 (如果知道的話就好辦了XD)

06/05 10:44, , 7F
我建議是額外架設一台server 去抓, 然後存 db, app 再去你d
06/05 10:44, 7F

06/05 10:44, , 8F
b 抓資料,或是 server gcm 推送app, 不然你用 app 定時抓
06/05 10:44, 8F

06/05 10:44, , 9F
會很耗電
06/05 10:44, 9F
其實這個app目前是自己寫好玩的,所以還沒有想太多 就很簡單的有開啟就檢查而已 就像我自己手動開啟網頁後,看一下某隻手機有沒有降價、哪些手機新上架這樣XD

06/05 12:57, , 10F
商品有沒有絕對的id? 最好用id作判斷
06/05 12:57, 10F
好像沒有…我目前都直接用手機的名稱做為key

06/07 00:18, , 11F
推上面用server抓,抓完寫個function比對,有變動就push,然後
06/07 00:18, 11F

06/07 00:19, , 12F
寫支api,當resume或start的時候去call api更新app資料?
06/07 00:19, 12F

06/07 00:21, , 13F
開啟就檢查就存成兩個檔案去比對?
06/07 00:21, 13F

06/07 11:09, , 14F
另外用server抓簡單多啦 何必用手機做這種事
06/07 11:09, 14F
因為小魯目前只是在做小玩具,想說架server要考慮的事情好多啊...XD ※ 編輯: james732 (118.160.22.25), 06/07/2015 23:31:21
文章代碼(AID): #1LS8TYVo (AndroidDev)
文章代碼(AID): #1LS8TYVo (AndroidDev)