コード例 #1
0
def get():
    # print(request.args)
    region = request.args.get('r_region')
    case = request.args.get('r_case')
    benefit = request.args.get('r_benefit')
    number = request.args.get('r_number')
    location = request.args.get('r_location')
    token = request.args.get('r_token')
    # print('*****', token)
    req = Request()
    req.create_request(region, benefit, case, number, location)
    req.send_request()
    jp = JsonParser(req.rec_response())
    jp.parse(token)
    status_code = Response(status=200)
    if token:
        try:
            db = DataBase()
            db.add_to_history(token, region, benefit, case, number, location)
        except Exception as e:
            print('error while adding history row:' + str(e))
            pass
    # print(jp.response)
    return jsonify(jp.response)
コード例 #2
0
class IO:
    def __init__(self):
        self.parser = JsonParser()
        self.text = ''
        self.read_text()

    def read_text(self):
        with open('timetable.json', 'r', encoding='utf-8') as file:
            self.text = file.read()

    def get_input_timetable(self):
        return self.parser.parse(self.text)

    def get_input_timetable_by_loads(self):
        return json.loads(self.text)

    def single_speed_test(self, parse_function, number: int = 1000):
        start_time = datetime.now()
        for i in range(number):
            parse_function()
        end_time = datetime.now()
        all_time = (end_time - start_time).total_seconds()
        return all_time

    def speed_test(self, number: int = 1000):
        my_time = self.single_speed_test(self.get_input_timetable, number)
        lib_time = self.single_speed_test(self.get_input_timetable_by_loads,
                                          number)
        print('my_time:', my_time)
        print('lib_time:', lib_time)

    @staticmethod
    def write_output_timetable(timetable):
        with open('timetable.serialized', 'wb') as file:
            file.write(timetable.SerializeToString())

    @staticmethod
    def get_serialized_timetable():
        timetable = timetable_pb2.TimeTable()
        with open('timetable.serialized', 'rb') as file:
            timetable.ParseFromString(file.read())
        return timetable
コード例 #3
0
ファイル: request.py プロジェクト: piechota5/nfz
        raise ValueError("ERROR: Try to send an empty request")

    def rec_response(self):
        return self.response

    def to_ascii_url(self, text):
        # remove white spaces around
        text = text.strip()
        #remove duplicated spaces
        text = " ".join(text.split())
        # replace spaces by '%20'
        text = text.replace(" ", "%20")
        # strip right non ascii characters
        # urllib cant send utf-8 characters and
        # host doesn't 'understand' encoded ones
        for c in range(len(text)):
            if ord(text[c]) >= 128:
                return text[:c]
        return text


# for testing purposes
if __name__ == "__main__":
    reqiest = Request()
    reqiest.create_request('01', 'poradnia', 1)
    reqiest.send_request()

    from jsonparser import JsonParser
    jp = JsonParser(reqiest.rec_response())
    jp.parse()
コード例 #4
0
ファイル: ccjson.py プロジェクト: chengchen09/json
 def load_python(self, f):
     ss = f.read()
     jparser = JsonParser(ss)
     self._dd = jparser.parse()
コード例 #5
0
ファイル: ccjson.py プロジェクト: chengchen09/json
 def loads(self, ss):
     jparser = JsonParser(ss)
     self._dd = jparser.parse()
コード例 #6
0
ファイル: ccjson.py プロジェクト: chengchen09/json
 def load_python(self, f):
     ss = f.read()
     jparser = JsonParser(ss)
     self._dd = jparser.parse()
コード例 #7
0
ファイル: ccjson.py プロジェクト: chengchen09/json
 def loads(self, ss):
     jparser = JsonParser(ss)
     self._dd = jparser.parse()