weijunjie

用pyspider爬取并解析json字符串

获取堆糖网站所有用户的id 昵称及主页地址

#!/usr/bin/env python
# -*- encoding: utf-8 -*-
# Created on 2016-06-21 13:57:13
# Project: duitang

from pyspider.libs.base_handler import *


class Handler(BaseHandler):
    crawl_config = {
    }

    @every(minutes=24 * 60)
    def on_start(self):
        self.crawl('http://www.duitang.com/napi/friendship/fans/?start=0&limit=1000&user_id=116965', callback=self.index_page)

    @config(age=10 * 24 * 60 * 60)
    def index_page(self, response):
        for each in  response.json['data']['object_list']:
            id = each['id']
            self.crawl('http://www.duitang.com/napi/friendship/fans/?start=0&limit=1000&user_id='+str(id), callback=self.index_page)
            self.crawl('http://www.duitang.com/napi/people/profile/?user_id='+str(id), callback=self.detail_page)
        start = response.json['data']['next_start'] 
        total = response.json['data']['total']
        user = response.json['data']['visit_user']['user_id']
        if start < total:
            self.crawl('http://www.duitang.com/napi/friendship/fans/?start='+str(start)+'&limit=1000&user_id='+str(user),callback=self.index_page)

    
    @config(priority=2)
    def detail_page(self, response):
        return {
            "username": response.json['data']['username'],
             "id": response.json['data']['id']
        }

 

posted on 2017-09-22 12:23  weijunjie  阅读(608)  评论(0)    收藏  举报

导航