國立清華大學

#新手 有關於Meteor論壇的爬蟲

2019年6月4日 01:26
(電腦排版) 大家好, 最近開始學習python網頁爬蟲, 算是有爬過Dcard與Ptt的經驗了, 於是轉戰高中生論壇Meteor, 觀察結構時候, 發現它的網頁載入更多文章時需要透過下方的"載入更多按鈕", 沒辦法使用selenium與webdriver進行爬取, 每當按下"載入更多按鈕", F12的Network處會多一個get_hot_article, Response裡面有一個{"result":"內為需要解碼的一大串字"}, result值我解碼過了是載入的新文章的一些資料, 程式碼我目前只有打import一些套件與一些headers就不附上了, 想請問我該如何把按鈕POST出來get_hot_article轉成正常爬取文章出來的樣子, 請各位大神開示, 謝謝!
愛心
18
.回應 7
熱門回應
國立臺灣科技大學
B1 現在中學生不知道在想什麼 動不動要把人家祖宗十八代幹到飛上天 這樣不會累嗎?
共 7 則回應
國立清華大學
首先這顯然是 URL Encoding
Decode後:
會變成JSON格式 python的話 用 urllib 的 unquote 就可以 decode 了
原PO - 國立清華大學
B1 謝謝大神 我再嘗試用selenium模擬點按鈕練習看看
國立臺灣科技大學
B1 現在中學生不知道在想什麼 動不動要把人家祖宗十八代幹到飛上天 這樣不會累嗎?
以前的前端工程師路過 先把 res.result 用 url decode 再把 Json 字串 Parse 成物件就可以了 JavaScript 是這樣寫的 JSON.parse(decodeURI(response.result))
原PO - 國立清華大學
B4 我昨天也是這樣寫 成功了 謝謝您
國立高雄海洋科技大學 微電子工程系
B3 笑死
原PO - 國立清華大學
https://repl.it/repls/OutlandishNoisyComputer 附上我的程式 那個各位大神好,我爬到特定頁數(例如166)後 會出現 JSONDecodeError: Expecting value: line 1 column 13120 (char 13119) 查了一天資料還是有點沒頭緒 請大家賜教謝謝QQ
馬上回應搶第 8 樓...