Query Shodan for host information.
(
target: str = typer.Argument(..., help="Target IP or domain"),
verbose: bool = typer.Option(False, "--verbose", "-v"),
)
| 339 | |
| 340 | @osint_app.command("shodan") |
| 341 | def osint_shodan( |
| 342 | target: str = typer.Argument(..., help="Target IP or domain"), |
| 343 | verbose: bool = typer.Option(False, "--verbose", "-v"), |
| 344 | ): |
| 345 | """Query Shodan for host information.""" |
| 346 | setup_logging(debug=verbose) |
| 347 | from modules.osint import ShodanScanner |
| 348 | |
| 349 | console.print(f"[bold]Shodan Lookup:[/bold] {target}") |
| 350 | scanner = ShodanScanner() |
| 351 | result = run_async(scanner.run(Target.from_string(target))) |
| 352 | display_result(result) |
| 353 | |
| 354 | |
| 355 | @osint_app.command("full") |
nothing calls this directly
no test coverage detected