Parcourir la source

planet_bases: list individual planets

raylu il y a 1 mois
Parent
commit
9e751ae103
1 fichiers modifiés avec 6 ajouts et 3 suppressions
  1. 6 3
      planet_bases.py

+ 6 - 3
planet_bases.py

@@ -8,19 +8,22 @@ import tap
 import cache
 
 class Args(tap.Tap):
+	planets: list[str]
 	sector: tuple[str, ...] = ()
 
+	def configure(self) -> None:
+		self.add_argument('planets', nargs='+', metavar='planet') # take planets as positional args instead of flag
+
 def main() -> None:
 	args = Args().parse_args()
-	planets = []
 	if args.sector:
 		all_planets: typing.Sequence[Planet] = cache.get('https://rest.fnar.net/planet/allplanets')
 		for planet in all_planets:
 			if planet['PlanetNaturalId'].startswith(args.sector):
-				planets.append(planet['PlanetName'])
+				args.planets.append(planet['PlanetName'])
 
 	with concurrent.futures.ThreadPoolExecutor(max_workers=2) as executor:
-		for planet, bases in zip(planets, executor.map(get_bases, planets)):
+		for planet, bases in zip(args.planets, executor.map(get_bases, args.planets)):
 			print(planet)
 			for base in bases:
 				if base['OwnerCode'] is None: