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. dockerfile - 为什么docker容器启动不了?2. 热切期待朱老师的回复,网页视频在线播放器插件配置错误3. apache - 本地搭建wordpress权限问题4. macos - mac下docker如何设置代理5. Android下,rxJava+retrofit 并发上传文件和串行上传文件的效率为什么差不多?6. javascript - web网页版app返回上一页按钮在ios设备失效怎么办?安卓上可以,代码如下,请大神帮助,万分感谢。7. java - Spring Mvc全局异常处理器@ControllerAdvice不起作用?8. css3 - transition属性当鼠标一开的时候设置的时间不起作用9. Whitelabel错误页面发生意外错误(类型=未找到,状态= 404)/WEB-INF/views/home.jsp10. angular.js - ng-grid 和tabset一起用时,grid width默认特别小
