handelsregister

command line interface for handelsregister.de
git clone https://git.ce9e.org/handelsregister.git

commit
355fa4ca664c7402fa5f6915a1abba0e04fee9d3
parent
ef1a14c5cabeb7943497bbbb1cd4f4e6b3164f32
Author
Tobias Bengfort <tobias.bengfort@posteo.de>
Date
2025-12-07 20:59
xml: add court parameter

register/id alone are not unique

Diffstat

M README.md 2 +-
M handelsregister.py 6 ++++--

2 files changed, 5 insertions, 3 deletions


diff --git a/README.md b/README.md

@@ -20,5 +20,5 @@ Deshalb habe ich dieses Skript gebaut. Benutzung:
   20    20 
   21    21 ```
   22    22 python3 handelsregister.py search 'atos'  # search by keyword
   23    -1 python3 handelsregister.py xml HRB 16686  # get structured data for a specific entry
   -1    23 python3 handelsregister.py xml HRB 16686 M1202  # get structured data for a specific entry
   24    24 ```

diff --git a/handelsregister.py b/handelsregister.py

@@ -123,11 +123,12 @@ def search(terms, register=''):
  123   123     return data['items']
  124   124 
  125   125 
  126    -1 def get_xml(register, id):
   -1   126 def get_xml(register, id, court):
  127   127     with Session() as session:
  128   128         data = _search(session, {
  129   129             'form:registerArt_input': register,
  130   130             'form:registerNummer': id,
   -1   131             'form:registergericht_input': court,
  131   132         })
  132   133         field = data['items'][0]['si_field']
  133   134 
@@ -163,6 +164,7 @@ def get_parser():
  163   164     parser_xml = subparsers.add_parser('xml', help='get data for a specific ID')
  164   165     parser_xml.add_argument('register', choices=REGISTERS)
  165   166     parser_xml.add_argument('id')
   -1   167     parser_xml.add_argument('court')
  166   168     parser_xml.set_defaults(action='xml')
  167   169 
  168   170     parser_list = subparsers.add_parser('list', help='get data for a specific ID')
@@ -179,7 +181,7 @@ if __name__ == '__main__':
  179   181             print(item['title'])
  180   182             print('\t', item['court'], item['reg'], item['id'])
  181   183     elif args.action == 'xml':
  182    -1         print(get_xml(args.register, args.id))
   -1   184         print(get_xml(args.register, args.id, args.court))
  183   185     else:
  184   186         for key, value in get_list(args.key).items():
  185   187             print(f'{key}\t{value}')