perceval/backends/core/stackexchange.py
def get_questions(self, from_date):
        """Retrieve all the questions from a given date.

        :param from_date: obtain questions updated since this date
        """

        page = 1
        url = urijoin(self.base_url, self.VERSION_API, "questions")

        req = self.fetch(url, payload=self.__build_payload(page, from_date))
        questions = req.text

        data = req.json()
        tquestions = data['total']
        nquestions = data['page_size']

        self.__log_status(data['quota_remaining'],
                          data['quota_max'],
                          nquestions,
                          tquestions)

        while questions:
            yield questions
            questions = None

            if data['has_more']:
                page += 1

                backoff = data.get('backoff', None)
                if backoff:
                    logger.debug("Expensive query. Wait %s secs to send a new request",
                                 backoff)
                    time.sleep(float(backoff))

                req = self.fetch(url, payload=self.__build_payload(page, from_date))
                data = req.json()
                questions = req.text
                nquestions += data['page_size']
                self.__log_status(data['quota_remaining'],
                                  data['quota_max'],
                                  nquestions,
                                  tquestions)
def get_questions(self, from_date):
        """Retrieve all the questions from a given date.

        :param from_date: obtain questions updated since this date
        """

        page = 1
        url = urijoin(self.base_url, self.VERSION_API, "questions")

        req = self.fetch(url, payload=self.__build_payload(page, from_date))
        questions = req.text

        data = req.json()
        tquestions = data['total']
        nquestions = data['page_size']

        self.__log_status(data['quota_remaining'],
                          data['quota_max'],
                          nquestions,
                          tquestions)

        while questions:
            yield questions
            questions = None

            if data['has_more']:
                page += 1

                backoff = data.get('backoff', None)
                if backoff:
                    logger.debug("Expensive query. Wait %s secs to send a new request",
                                 backoff)
                    time.sleep(float(backoff))

                req = self.fetch(url, payload=self.__build_payload(page, from_date))
                data = req.json()
                questions = req.text
                nquestions += data['page_size']
                self.__log_status(data['quota_remaining'],
                                  data['quota_max'],
                                  nquestions,
                                  tquestions)
def get_questions ( self , from_date ) : page = 1 url = urijoin ( self . base_url , self . VERSION_API , "questions" ) req = self . fetch ( url , payload = self . __build_payload ( page , from_date ) ) questions = req . text data = req . json ( ) tquestions = data [ 'total' ] nquestions = data [ 'page_size' ] self . __log_status ( data [ 'quota_remaining' ] , data [ 'quota_max' ] , nquestions , tquestions ) while questions : yield questions questions = None if data [ 'has_more' ] : page += 1 backoff = data . get ( 'backoff' , None ) if backoff : logger . debug ( "Expensive query. Wait %s secs to send a new request" , backoff ) time . sleep ( float ( backoff ) ) req = self . fetch ( url , payload = self . __build_payload ( page , from_date ) ) data = req . json ( ) questions = req . text nquestions += data [ 'page_size' ] self . __log_status ( data [ 'quota_remaining' ] , data [ 'quota_max' ] , nquestions , tquestions )
Retrieve all the questions from a given date.

        :param from_date: obtain questions updated since this date
Retrieve all the questions from a given date .