分布式爬虫爬取知乎用户—存储篇

数据爬下来了,需要存储起来,之前用过mysql,感觉关系型数据库不太适用于爬虫,所以这次选用nosql数据库 mongodb。

存入步骤

1.  将爬取到的用户信息转成key value模式,类如如下:

people = {'urlToken': urlToken}

people['educations'] ='&&'.join(map((lambda x:'%s%s%s' % (

(x['school']['name']if x.has_key('school')else ''), (',' if x.has_key('school')and x.has_key('major')else ''),

(x['major']['name']if x.has_key('major')else ''))), data['educations'])).strip().replace("'","\\'")

people['followingCount'] = data['followingCount']# 他关注的人数

people['pinsCount'] = data['pinsCount']# 他的分享数

people['favoriteCount'] = data['favoriteCount']# 他的收藏数

people['voteupCount'] = data['voteupCount']# 他获得的赞同数

......

2.  连接mongodb

mongo_client = pymongo.MongoClient(mongo_host,mongo_port)

db = mongo_client['test1']

collection = db['zhihu_userinfo']

3.将数据插入数据库

result = collection.insert(people)

注意:主服务器需要将mongodb的远程访问打开

具体步骤:

1.  打开配置文件 mongod.conf 

2.  找到  bindIp: 127.0.0.1 将其修改为bindIp: 0.0.0.0

3.  使用配置文件启动mongodb

mongod --config /usr/local/etc/mongod.conf

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi阅读 7,458评论 0 10
  • **2014真题Directions:Read the following text. Choose the be...
    又是夜半惊坐起阅读 9,980评论 0 23
  • 背景: 阅读新闻 12C CDB模式下RMAN备份与恢复 [日期:2016-11-29] 来源:Linux社区 作...
    阳屯okyepd阅读 3,627评论 0 7
  • 1、非变异算法与变异算法概述 非变异算法是指一系列模板函数,在不改变操作对象的前提下对元素进行处理,如查找、子序列...
    freedomywb阅读 361评论 0 0
  • 犹记得11月20日清晨,跑在烟雨朦胧的西湖边,景色迷人仿佛跑在画中,拿出手机想拍几张美图,谁知天冷手滑,手机不受控...
    猛虎哥阅读 379评论 2 1