新浪微博分布式爬虫分享

标签: 新浪微博 | 发表时间:2016-03-16 15:38 | 作者:Bone_ACE
分享到:
出处:http://blog.csdn.net

代码请移步GitHub: SinaSpider

(上面有跳转链接,别再问我代码在哪里了)


爬虫功能:


环境、架构:

  • 开发语言:Python2.7
  • 开发环境:64位Windows8系统,4G内存,i7-3612QM处理器。
  • 数据库:MongoDB 3.2.0、Redis 3.0.501
  • (Python编辑器:Pycharm;MongoDB管理工具:MongoBooster;Redis管理工具:RedisStudio)

  • 爬虫框架使用 Scrapy,使用 scrapy_redis 和 Redis 实现分布式。

  • 分布式中有一台机充当Master,安装Redis进行任务调度,其余机子充当Slaver只管从Master那里拿任务去爬。原理是:Slaver运行的时候,scrapy遇到Request并不是交给spider去爬,而是统一交给Master机上的Redis数据库,spider要爬的Request也都是从Redis中取来的,而Redis接收到Request后先去重再存入数据库,哪个Slaver要Request了再给它,由此实现任务协同。


使用说明:

  • Python需要安装好Scrapy、pymongo、json、base64、requests。
  • Master机只需要安装好Redis即可(内存要求大点),Slaver机需要安装python环境和MongoDB来存储数据。如果想要将数据都存储到一台机子上,直接改一下爬虫程序(pipeline)里面MongoDB的IP即可,或者建议搭建一个MongoDB集群。Redis和MongoDB都是安装好即可,不需要配置。
  • 将你用来登录的微博账号和密码加入到 cookies.py 文件中,里面已经有两个账号作为格式参考了。
  • 可以修改scrapy里面setting的设置,例如间隔时间、日志级别、redis的IP等等。
  • 以上配置完以后运行 Begin.py 即可。重申Master机不需要跑程序,它的功能是利用Redis进行任务调度。Slaver机跑爬虫,新增一台Slaver机,只需要把python环境和MongoDB搭建好,然后将代码复制过去直接运行就行了。



转载请注明出处,谢谢!(原文链接: http://blog.csdn.net/bone_ace/article/details/50904718

作者:Bone_ACE 发表于2016/3/16 15:38:48 原文链接
阅读:207 评论:0 查看评论

相关 [新浪微博] 推荐:

围攻新浪微博

- Jos - 望月的博客
在国内的门户微博中,新浪微博无疑是目前用户数量最多、媒体属性最强的,但是,最近,却连续看到一些互联网的知名人士高调宣布退出或者关闭新浪微博的博文,使用和不使用某个产品本就是个人的自由,但如此高调的宣布,并进行口诛笔伐,就值得关注了. 本文试图通过分析谷奥事件,宋石男和贾葭两位老师离开新浪微博的事件分析新浪微博的是与非.

新浪微博连接 2.3

- leeking001 - 我爱水煮鱼
新浪微博连接是我使用新浪微博 API 接口开发的一个 WordPress 插件,它的主要功能是能让用户使用新浪微博账号登陆 WordPress 博客,并且可以直接使用新浪微博的头像,同步博客日志到 WordPress 博客. 经过几天的测试,新浪微博连接插件升级到 2.3,主要修正:同步博客到新浪微博的问题,并且同步内容更为丰富,规则改为:【日志标题】+ 日志内容摘要 + 日志链接.

新浪微博n大傻

- suki - broom's blog
看不到follow的人之间的交互这类产品本身的问题就不提了,就说说用户行为的傻. 其中有些行为也是产品本身纵容的. 三天两头换id的,搞个巨长的id既占字数又让别人压根没法手动@的,带个公司前缀的,用流行语的. 完全没有网络时代id就是个人身份的概念,意识还停留在QQ时代,以为随便改昵称呢. 某些专门发垃圾小段子的帐号尤甚.

新浪微博不是Twitter

- 马克叔叔 - 月光博客
  Twitter是互联网短信,新浪微博以微博客Twitter式弱关系切入,正在转型SNS. 转型的挑战在于:1.如何融合弱关系和强关系. 2.如何用弱关系倒逼中国社会的强关系和潜关系.   国内有一些Twitter的拥趸,认为微博抄Twitter都抄不到点子上.   “Twitter 是四两拨千斤的艺术.

V5后的新浪微博

- - It Talks--上海魏武挥的博客
正是在这个内外交困的时刻,新浪微博展开了它的商业化之旅,前途如何,尚未可知. 近日新浪微博发布了它的第五个版本,称为“V5”,在这个版本中,一个很明显的变化是:它长的有点像Facebook,用户不仅可以设置较大的头像,也可以在顶部自定义一张大图. V5版本的一些细节做得很用心,无论是提示语,还是版式的细微之处.

小心授权你的新浪微博

- Ehaagwlke - 心弦 | blog
新浪微博上的“随手拍解救大龄女青年”出来有一段时间了,粉丝为数众多,也有了一定的社会影响力. 开始的时候我觉得这是挺好的一件事儿. 这个微博的主人不仅在微博上热心公益事业,还特意做了一个网站,把所有想要被“解救”的姑娘的信息汇总,让大家可以按照各种条件查找,然后查看她们的详细资料. 可是后来我无意中发现一个问题:这个网站在竭尽全力地获得其访问者的新浪微博账户的授权.

PADMAG@新浪微博 近期精选(070311)

- 璎珞天色 - PADMAG视觉杂志
【摄影】70个闪电出现在同一张照片,拍摄于希腊Ikaria岛,来自摄影师Chris Kotsiopoulos,官方网站:http://t.cn/aNItNg. PADMAG的新浪微博:http://weibo.com/padmag,点击阅读全文可见更多内容. 【产品设计】iDroplets是一款用于iPad的透明脚贴,保护iPad与桌面接触时不至于划伤,一组售价5美元,全球包邮,官网:http://t.cn/hBCZjU ,看起来会像一颗水珠.

新浪微博屏蔽“长江”

- David - Solidot
新浪微博迎来了荒诞的一天:《华尔街日报》发现无法在上面搜索长江或扬子江. 新浪微博会返回“根据相关法律法规和政策,搜索结果未予显示”. 凡是与“江”有关的关键词都被屏蔽,如江西,江东,江北,浙江. 除此之外新浪还屏蔽了大量的其它关键词.

新浪微博的XSS攻击

- 铭文 - 酷壳 - CoolShell.cn
今天晚上(2011年6月28日),新浪微博出现了一次比较大的XSS攻击事件. 大量用户自动发送诸如:“郭美美事件的一些未注意到的细节”,“建党大业中穿帮的地方”,“让女人心动的100句诗歌”,“3D肉团团高清普通话版种子”,“这是传说中的神仙眷侣啊”,“惊爆!范冰冰艳照真流出了”等等微博和私信,并自动关注一位名为hellosamy的用户.

新浪微博抄袭了 Twitter ?

- 劲 - 爱范儿 · Beats of Bits
在 Twitter 用户看来,新浪抄袭 Twitter 这事证据确凿堪比姚晨的单身证明. 而有些微博用户的看法则正相反: Twitter 的那个 t ,不就是抄袭自 t.sina.com.cn 吗. 站的离这两拨人远一点,你也许会发现,微博虽然继承了 Twitter 的规则和框架,但是,在细节甚至基本理念上,还是有些不同.