#!/bin/python3 import json import requests instance_list = ['peertube.social', 'tube.tchncs.de', 'vidcommons.org', 'video.deadsuperhero.com', 'diode.zone', 'share.tube'] json_list = [] id = 0 for i in instance_list: config_json = requests.get('https://' + i + '/api/v1/config').json() about = requests.get('https://' + i + '/api/v1/config/about') stats = requests.get('https://' + i + '/api/v1/server/stats') about_json = about.json() stats_json = stats.json() data = { "id": id, "host": i, "name": config_json['instance']['name'], "shortDescription": config_json['instance']['shortDescription'], "version": config_json['serverVersion'], "signupAllowed": config_json['signup']['allowed'], "userVideoQuota": config_json['user']['videoQuota'], "categories": about_json['instance']['categories'], "languages": about_json['instance']['languages'], "autoBlacklistUserVideosEnabled": config_json['autoBlacklist']['videos']['ofUsers']['enabled'], "defaultNSFWPolicy": config_json['instance']['defaultNSFWPolicy'], "isNSFW": config_json['instance']['isNSFW'], "totalUsers": stats_json['totalUsers'], "totalVideos": stats_json['totalVideos'], "totalLocalVideos": stats_json['totalLocalVideos'], "totalInstanceFollowers": stats_json['totalInstanceFollowers'], "totalInstanceFollowing": stats_json['totalInstanceFollowing'], "health": None, "createdAt": None } json_list.append(data) id += 1 json = json.dumps({"total": len(json_list), "data": json_list}, indent=4) print(json, file=open('public/instances.json', 'w'))