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

数据爬下来了,需要存储起来,之前用过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

    推荐阅读