javascript - node爬取微博
問題描述
剛接觸node,想寫個爬蟲,爬取新浪微博評論,但是發現頁面是由JS動態生成的,用http模塊爬取不到,然后用phantomjs爬取,(聽說會比較慢,運行了近15分鐘,這也太慢了,不知是否寫錯),還是不行,問一下有什么辦法能夠爬取類似于新浪微博的網頁嗎?
let page=require('webpage').create();let url='http://weibo.com/1713926427/Etq2WnSiR?filter=hot&root_comment_id=0&type=comment';/*page.settings = { javascriptEnabled: true, loadImages: false, webSecurityEnabled: false, userAgent: ’Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.137 Safari/537.36 LBBROWSER’};*/page.open(url,(status)=>{ console.log('Status:'+status); if(status=='success'){let val = page.evaluate(()=>{ var list_box=document.querySelector('.list_box'); console.log(list_box); return list_box});console.log(val) }else{console.log('failed') } phantom.exit();});
問題解答
回答1:自己寫過微博的爬取,有兩種思路
仔細看一下應該是有接口去獲取相應數據的然后用正則去匹配
微博提供了開發者API接口的,雖然用著比較麻煩
相關文章:
1. apache web server 怎么限制某一個網站對服務器資源的占用?2. docker網絡端口映射,沒有方便點的操作方法么?3. docker start -a dockername 老是卡住,什么情況?4. java中返回一個對象,和輸出對像的值,意義在哪兒5. css3 - 純css實現點擊特效6. mysql - 在不允許改動數據表的情況下,如何優化以varchar格式存儲的時間的比較?7. 安全性測試 - nodejs中如何防mySQL注入8. docker - 各位電腦上有多少個容器啊?容器一多,自己都搞混了,咋辦呢?9. javascript - 關于apply()與call()的問題10. html5 - 請問現在主流的前端自動化構建工具是哪個?
