| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- import collections
- import httpx
- def main():
- corps = httpx.get('https://prun.raylu.net/stats/data/parentCorps.json').json()
- companies = httpx.get('https://prun.raylu.net/stats/data/knownCompanies.json').json()
- volume_delta(corps, companies)
- def volume_delta(corps, companies):
- co_totals = httpx.get('https://prun.raylu.net/stats/data/company-data-jul26.json').json()['totals']
- jul_volume = month_volume(corps, companies, co_totals)
- co_totals = httpx.get('https://prun.raylu.net/stats/data/company-data-aug26.json').json()['totals']
- aug_volume = month_volume(corps, companies, co_totals)
- for corp, volume in aug_volume.items():
- print(corp, volume - jul_volume.get(corp, 0))
- def month_volume(corps, companies, co_totals) -> dict:
- volumes = collections.defaultdict(int)
- for coid, pd in co_totals.items():
- co = companies.get(coid)
- if co is None: continue
- corp = co.get('Corporation')
- if corp is None: continue
- corp = corps.get(corp, corp)
- volumes[corp] += pd['volume']
- return volumes
- def base_delta(corps, companies):
- base_data = httpx.get('https://prun.raylu.net/stats/data/base-data-jul26.json').json()
- jul_bases = month_bases(corps, companies, base_data)
- base_data = httpx.get('https://prun.raylu.net/stats/data/base-data-aug26.json').json()
- aug_bases = month_bases(corps, companies, base_data)
- for corp, base_count in aug_bases.items():
- print(corp, base_count - jul_bases.get(corp, 0))
- def month_bases(corps, companies, base_data) -> dict:
- base_counts = collections.defaultdict(int)
- for coid, bd in base_data.items():
- co = companies.get(coid)
- if co is None: continue
- corp = co.get('Corporation')
- if corp is None: continue
- corp = corps.get(corp, corp)
- base_counts[corp] += bd['bases']
- return base_counts
- if __name__ == '__main__':
- main()
|