文档
开发用途:
- 纯兴趣而已
- 可以分析新浪微博手机端页面的设计,分析微博系统设计的一些技术(RestApi命名规范.etc)
- 可以自己写一个自动发送微博、自动评论、自动点赞 . . .的utils
效率:
sina.weibo.GetFansThread : 10个用户的粉丝/min(使用代理)
- 目前可以利用微博手机端网页抓取新浪微博各种信息(微博、粉丝、发布微博 [附带地理位置信息] )
-
目前正在加入多线程,已考虑Connection、爬虫队列同步问题
-
线程池
-
代理服务中间层(proxy),利用代理池实现动态更换IP,但请求会出现阻塞,对策是:开启线程监视该请求,超时则放弃请求;(现已找到原因,http有两个超时时间:1.连接超时;2.请求超时;)
-
怎么做多账号(微博)切换
-
----- ↑ 已解决 | 未解决 ↓ -----
-
Concurrent 引入并发库
-
Connection连接池
-
redis做爬虫URL队列(LPOP),SolrCloud存储层
-
加入了一个朋友网爬虫demo,抓取用户关系数据
-
后面可能会加上新闻的抓取 (考虑到新闻站点抓取较为容易,其实主要本系统主要目的在于爬虫的技术架构,而非所爬的内容) 设计上:
- 会考虑抓取策略,以前写了一个队三大新闻网站的抓取,但代码结构不是很好,有时间重构一下,然后放上来;
- 会采用分布式solr进行存储(solrCloud),搭建的方式及环境的教程,自己写的,欢迎来喷:单机搭建伪分布SolrCloud
- 暂时该项目只会完成上述两项,如果有时间、有能力的话,会做一些更有技术含量的抓取
- 图片、视频抓取
- 暗网抓取
2015-04-21
- √ 要考虑纳入多线程,使用代理防止新浪的屏蔽
- √ 考虑添加analyzer中间层:
JSON/HTML --> ANALYZER --> DOMAIN
将获取到的JSON/HTML交给分析器ANALYZER进行处理,最后返回领域实体DOMAIN
- √ 添加代理服务(Proxy)
考虑如何扩展使用代理服务器来抓取数据,不然会被对方屏蔽
2015-04-28
- √ 将Jsoup替换成HttpClient
- √ 加入了代理(HttpHost)
- √ 登录的时候不能使用代理!
- √ 多账号登录、多代理抓取测试
2015-05-10
- 使用redis(lpush、lpop)做抓取队列
- cjp-spider-web 做抓取监控、线程监控