class KsipApi: def __init__(self, server, login, password): self.__server = server self.__client = HttpClient( server, headers={'Content-type': 'application/json'}) self.__client.authorize_basic(login, password) def get_sdo_fact(self, uri, date, shift, mine, shaft, section): return self.__get_items('{0}/{1}/{2}/{3}/{4}/{5}'.format( uri, date, shift, mine, shaft, section)) def get_skip_fact(self, uri, date, shift, mine): response = self.__get_items('{0}/{1}/{2}/{3}'.format( uri, date, shift, mine), root='facts') return response def get_ore_pass_fact(self, uri, date, shift, mine): response = self.__get_items('{0}/{1}/{2}/{3}'.format( uri, date, shift, mine), root='facts') return response def __get_items(self, uri, root='data'): response = self.__client.get(uri) items = getattr(Dynamic(response), root, list()) if items is None: items = list() return items
def main(): title = sys.argv[1] client = HttpClient() params = { 'action': 'query', 'format': 'json', 'prop': 'revisions', 'rvprop': 'content', 'titles': title, } data = client.get(URL, params) if data is not None: pprint(data) json.dump(data, open('contents.json', 'w')) # ファイルとして保存
def test_server_responds_for_healthcheck_action(): clear() class TestController(Controller): pass server = Server(root_dir=root_dir) try: server.start(config_path=config_path, non_block=True) status_code, content = HttpClient.get(join(server.context.settings.Ion.baseurl, "healthcheck")) assert status_code == 200 assert content == "WORKING" finally: server.stop()
def test_server_responds_for_controller_action(): clear() class TestController(Controller): @route("/") def SomeAction(self): return "Hello World" server = Server(root_dir=root_dir) try: server.start(config_path=config_path, non_block=True) status_code, content = HttpClient.get(server.context.settings.Ion.baseurl) assert status_code == 200 assert content == "Hello World" finally: server.stop()
def test_save_and_render_user_model(): clear() class TemplateFolderController(Controller): @route("/") def some_action(self): all_users = self.store.query(User).all() for user in all_users: self.store.delete(user) self.store.commit() user = User("someone") self.store.add(user) return str(user) server = ServerHelper(root_dir, 'controller_config1.ini') exit_code, content = HttpClient.get("http://localhost:9947/") assert content == "<User('someone')>"
def main(): title = sys.argv[1] client = HttpClient() params = { 'action': 'query', 'format': 'json', 'prop': 'revisions', 'rvprop': 'content', 'titles': title, } data = client.get(URL, params) if data is not None: contents = get_contents(data) entities = get_entities(contents) pprint(entities) print('=' * 72) print('\nカテゴリのみを出力') for category in filter(lambda x: x.startswith('Category:'), entities): print(category)
class DsgApi: def __init__(self, server, login, password): self.__server = server self.__client = HttpClient(server, {'Content-type': 'application/json'}) self.__client.authorize_bearer('token', login, password) def get_mine(self, date): return self.__get_items('api/references/mine/{0}'.format(date)) def get_shaft(self, date, mine_id): return self.__get_items('api/references/shaft/{0}/{1}'.format( date, mine_id)) def get_section(self, date, mine_id, shaft_id): return self.__get_items('api/references/section/{0}/{1}/{2}'.format( date, mine_id, shaft_id)) def get_orepass(self, date, mine_id): return self.__get_items('api/references/orepass/{0}/{1}'.format( date, mine_id)) def get_skip(self, date, mine_id): return self.__get_items('api/references/skip/{0}/{1}'.format( date, mine_id)) def get_location(self, date, mine_id): return self.__get_items('api/references/location/{0}/{1}'.format( date, mine_id)) def get_location_kind(self, date): return self.__get_items('api/references/locationkind/{0}'.format(date)) def get_development_type(self, date): return self.__get_items( 'api/references/developmenttype/{0}'.format(date)) def get_equipment_category(self, date): return self.__get_items( 'api/references/equipmentcategory/{0}'.format(date)) def get_equipment_type(self, date, equipment_category_id='Null'): return self.__get_items('api/references/equipmenttype/{0}/{1}'.format( date, equipment_category_id)) def get_equipment(self, date, mine_id, equipment_type_id='Null'): return self.__get_items('api/references/equipment/{0}/{1}/{2}'.format( date, mine_id, equipment_type_id)) def get_operator(self, date, mine_id): return self.__get_items('api/references/operator/{0}/{1}'.format( date, mine_id)) def get_material(self, date, material_kind='Null'): return self.__get_items('api/references/material/{0}/{1}'.format( date, material_kind)) def get_material_kind(self, date): return self.__get_items('api/references/materialkind'.format(date)) def get_job_kind(self, date, mine_id, job_category_id='Null'): return self.__get_items('api/references/jobkind/{0}/{1}/{2}'.format( date, mine_id, job_category_id)) def get_priority(self, date, mine_id, shift): return self.__get_items('api/references/priority/{0}/{1}/{2}'.format( date, mine_id, shift), root='priorityCollection') def get_unit(self, date): return self.__get_items('api/references/unit/{0}'.format(date)) def get_work_order(self, date, mine_id, shaft_id, section_id, shift): orders = self.__get_items('api/workorder/{0}/{1}/{2}/{3}/{4}'.format( date, mine_id, shaft_id, section_id, shift)) orders_list = list() if len(orders) > 0: for order in orders: orders_list = orders_list + order.body return orders_list def get_locomotive_order(self, date, shift, mine_id): return self.__get_items('api/locomotiveorder/{0}/{1}/{2}'.format( date, shift, mine_id)) def get_skip_order(self, date, shift, mine_id): return self.__get_items('api/skiporder/{0}/{1}/{2}'.format( date, shift, mine_id)) def __get_items(self, uri, root='data'): response = self.__client.get(uri) items = getattr(Dynamic(response), root) if items is None: items = list() return items