Skip to content

feat: aggiungere una utility minima per dataset scouting#48

Merged
Gabrymi93 merged 2 commits intomainfrom
feat/scout-url-v0
Mar 15, 2026
Merged

feat: aggiungere una utility minima per dataset scouting#48
Gabrymi93 merged 2 commits intomainfrom
feat/scout-url-v0

Conversation

@Gabrymi93
Copy link
Copy Markdown
Member

Contesto

Questa PR chiude #47 aggiungendo una utility minima di supporto al dataset scouting.

Issue collegata:

Cosa fa

Nuovo comando CLI:

toolkit scout-url <URL>

Dato un URL, il comando mostra:

  • requested_url
  • final_url
  • status_code
  • content_type
  • content_disposition
  • kind (file / html / opaque)

Se la risposta e` HTML:

  • estrae i link candidati a .csv, .xlsx, .xls, .zip, .json
  • risolve i link relativi in assoluti
  • stampa i primi 20 link e segnala gli eventuali rimanenti

Perimetro

Perimetro volutamente stretto:

  • nessun crawler
  • nessuna browser automation
  • nessuna dipendenza nuova
  • nessuna classificazione avanzata del dataset

Implementazione:

  • requests
  • parser HTML della standard library

Nota tecnica

Nel primo giro il comando scaricava sempre il body completo. In questa PR il comportamento e` stato rifinito:

  • requests.get(..., stream=True)
  • classificazione iniziale dai soli header
  • body letto solo per risposte HTML

Questo evita download inutili per file o risposte opache, mantenendo il comando semplice.

Verifica

Eseguiti localmente:

.venv\Scripts\python.exe -m pytest tests\test_cli_scout_url.py tests\test_cli_all_commands.py tests\test_cli_status.py -q

Esito riportato: 9 passed

Testato anche su URL reali:

  • CSV diretto -> kind=file
  • pagina HTML con molti CSV -> kind=html
  • risposta opaca -> kind=opaque

Limite noto

La classificazione kind=file usa ancora una logica volutamente semplice e pragmatica, che considera anche estensioni presenti nella query string dell'URL. Per i portali del Lab eun tradeoff accettabile per questav0`.

@Gabrymi93
Copy link
Copy Markdown
Member Author

@codex review

@Gabrymi93 Gabrymi93 merged commit 3a70892 into main Mar 15, 2026
5 checks passed
@Gabrymi93 Gabrymi93 deleted the feat/scout-url-v0 branch March 15, 2026 19:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

toolkit: aggiungere una utility minima per dataset scouting

2 participants