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

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

你可能感兴趣的:(分布式爬虫爬取知乎用户—存储篇)