美文网首页我爱编程
分布式爬虫爬取知乎用户—存储篇

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

作者: karyuet | 来源:发表于2018-03-08 23:44 被阅读0次

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

    相关文章

      网友评论

        本文标题:分布式爬虫爬取知乎用户—存储篇

        本文链接:https://www.haomeiwen.com/subject/vjpufftx.html