output.py 645 B

12345678910111213141516171819202122
  1. import sys
  2. import httpx
  3. from config import config
  4. def main():
  5. (username,) = sys.argv[1:]
  6. prod = httpx.get('https://api.punoted.net/v1/production/user?username=' + username,
  7. headers={'X-Data-Token': config.punoted_api_key}).raise_for_status().json()
  8. for line in prod:
  9. print(line['PlanetName'], f'{line["Capacity"]}×{line["Type"]}', line['Efficiency'], line['Condition'])
  10. for orders in line['Orders']:
  11. outputs = set()
  12. if orders['CompletedPercentage'] is not None:
  13. continue
  14. for output in orders['Outputs']:
  15. outputs.add(output['MaterialTicker'])
  16. print('\t' + ', '.join(outputs))
  17. if __name__ == '__main__':
  18. main()