diff --git a/README.md b/README.md index 0a3cc74..1d9f0c9 100644 --- a/README.md +++ b/README.md @@ -13,12 +13,26 @@ al seguente indirizzo: https://www.nic.it/it/droptime ## Eseguire lo script Per eseguire lo script occorre avere almeno Python 3.10 - +Installare le dipendenze eseguendo: ``` poetry install +``` + +È possibile eseguire lo script in modalita interattiva, e quindi verrano chiesti giorni e lunghezza del dominio come input. +``` poetry run search ``` +Altrimenti è possibile eseguire lo script passando i requisiti come arguments: +``` +poetry run search +``` + +Esempio: +``` +poetry run search 3 5 +``` + ## Infrastruttura - [Python](https://www.python.org/) diff --git a/ita_expired_domains/main.py b/ita_expired_domains/main.py index 3fb1396..5ffe706 100644 --- a/ita_expired_domains/main.py +++ b/ita_expired_domains/main.py @@ -2,11 +2,21 @@ from ita_expired_domains.utils.client import italian_register_client from ita_expired_domains.utils.misc import handle_nic_responses, filter_by_length, echo_urls import asyncio +import sys -async def main(): - typer.echo("Benvenuto nel tool di ricerca di domini (.it) appena scaduti. Inserire numero di giorni da cercare (es: ultimi 4 giorni) e numero di caratteri del dominio (almeno 5)") - days = typer.prompt("Inserire numero di giorni da cercare (max. 8)") - length = typer.prompt("Inserire i caratteri desiderati del dominio (consigliabile almeno 3)") + +async def main(args=sys.argv): + """Gestiamo il comando con gli arguments (poetry run search 2 5) e senza (poetry run search) + Nel secondo caso gestiamo gli input + """ + args.pop(0) + if len(args) == 2: + days = args[0] + length = args[1] + else: + typer.echo("Benvenuto nel tool di ricerca di domini (.it) appena scaduti. Inserire numero di giorni da cercare (es: ultimi 4 giorni) e numero di caratteri del dominio (almeno 5)") + days = typer.prompt("Inserire numero di giorni da cercare (max. 8)") + length = typer.prompt("Inserire i caratteri desiderati del dominio (consigliabile almeno 3)") async with italian_register_client as client: responses = await client.fetch_droptime_files(days_num=days)