{ "info": { "author": "Spencer Heywood", "author_email": "l.spencer.heywood@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "##urlscan-py\n\n## Description:\n\nUrlscan-py is a Python wrapper for urlscan.io's API to scan URLs.\n\n\n## Installation and Usage:\n\nVia PyPI:\n\n`pip3 install --user urlscan-py`\n\n\n### Saving the API key:\n\nThe API key will be stored in the default database that stores all initiated scan results. By default, this database is in `~/.urlscan/urlscan.db`. \n\nTo save the API key to a local database, use the `init` command:\n\n`urlscan init --api xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`\n\nIf the API key is entered incorrectly or some other error occurs in which the API key value in the database is incorrect, either attempt to overwrite it with the above init command or remove the database file with this command: `rm ~/.urlscan/urlscan.db`.\n\n\n### Scanning:\n\n`urlscan scan --url https://google.com`\n\nThe resulting output will produce a UUID. The UUID will be needed in order to retrieve the scan results. The output will also indicate whether the scan was successfully started or not.\n\nThe `--url` flag can accept more than one URL at a time.\n\n\n#### Save scan queue UUID results to different database file:\n\n`urlscan scan --url https://google.com --db mydatabase.db`\n\nThis would allow the user to easily review the UUIDs of previously queued scans in an sqlite3 database. This defaults to a file named `$HOME/.urlscan/urlscan.db` if no other database file is specified.\n\n\n#### Scan multiple domains stored in file 'example-domains.txt'\n\n`urlscan scan --url * --file 'example-domains.txt'`\n\nEach domain should be stored in a file with each domain separated by a newline.\n\n\n#### Scan command help:\n\n```\n\u276f urlscan scan --help\n\nusage: urlscan scan [-h] [--url URL [URL ...]] [--db FILE] [-f FILE] [-q]\n [--api KEY]\noptional arguments:\n -h, --help show this help message and exit\n --url URL [URL ...] URL(s) to scan\n --db FILE specify different database file initiated scans will\n be saved to\n -f FILE, --file FILE file with url(s) to scan\n -q, --quiet suppress output\n --api KEY urlscan API key\n\n```\n\n### Searching for queued or previously completed scans\n\n#### Search local database for previous scan (must match the url that was submitted):\n\n`urlscan search --url https://google.com`\n\n\n#### Search urlscan.io for public scans on a domain:\n\n`urlscan search --url https://google.com --web`\n\n\n#### Search command help:\n\n```\n\u276f urlscan search --help\n\nusage: urlscan search [-h] [--url HOST [HOST ...]] [--db FILE] [--web]\n\noptional arguments:\n -h, --help show this help message and exit\n --url HOST [HOST ...]\n url(s) to search for matching UUID\n --db FILE specify different database file to search\n --web search urlscan.io for URL (public)\n```\n\n\n### Retrieve the scan results:\n\n`urlscan retrieve --uuid UUID`\n\nThis will print the scan with the associated UUID to STDOUT. The `--uuid` flag can accept more than one UUID at a time.\n\n\n#### Save retrieved results to specific directory:\n\n`urlscan retrieve --uuid UUID --dir DIRECTORY`\n\nBy default, scans will be saved to the directory `.urlsaved_scans`. Change this by using the `--dir` flag and specifying a different directory.\n\n\n#### Save screenshot file:\n\n`urlscan retrieve --uuid UUID --png`\n\nThe downloaded screenshot png will be stored in the default `--dir` directory which is `~/.urlscan/saved_scans`. Specify a different `--dir` location to save the png to another directory.\n\n\n#### Save dom file:\n\n`urlscan retrieve --uuid UUID --dom`\n\nThe downloaded dom file will be stored in the default `--dir` directory which is `~/.urlscan/saved_scans`. Specify a different `--dir` location to save the dom file to another directory. \n\n\n\n#### Retrieve command help:\n\n```\nurlscan retrieve --help\n\n\u276f usage: urlscan retrieve [-h] --uuid UUID [UUID ...] [--db FILE] [--api KEY]\n [-d DIRECTORY] [--dom] [--png] [-q]\noptional arguments:\n -h, --help show this help message and exit\n --uuid UUID [UUID ...]\n UUID(s) to retrieve scans for\n --db FILE specify different database file to query\n --api KEY urlscan API key\n -d DIRECTORY, --dir DIRECTORY\n directory to save scans to\n --dom save dom file from retrieved result\n --png save screenshot as png\n -q, --quiet suppress output\n\n```\n\n\n\nAuthor: Spencer Heywood\n\nEmail: l.spencer.heywood@protonmail.com", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/heywoodlh/urlscan-py", "keywords": "", "license": "APACHE-2.0", "maintainer": "", "maintainer_email": "", "name": "urlscan-py", "package_url": "https://pypi.org/project/urlscan-py/", "platform": "", "project_url": "https://pypi.org/project/urlscan-py/", "project_urls": { "Homepage": "https://github.com/heywoodlh/urlscan-py" }, "release_url": "https://pypi.org/project/urlscan-py/1.0.5/", "requires_dist": null, "requires_python": "", "summary": "urlscan.io API wrapper", "version": "1.0.5" }, "last_serial": 5625768, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "465b28652dbd36ae8d9c5380a902a224", "sha256": "17eb3c440c491c6b699cb4ef9c0664c35ffc6fad755b20684d159e7e998d1e19" }, "downloads": -1, "filename": "urlscan_py-1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "465b28652dbd36ae8d9c5380a902a224", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4616, "upload_time": "2018-02-28T20:47:19", "url": "https://files.pythonhosted.org/packages/c0/59/6d259c4a743d4ded1dc41fd5f8698b54908ec136fb46a271f96afdf476d4/urlscan_py-1.0-py3-none-any.whl" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "33189f65f51acd487c65b91b616fb895", "sha256": "ed90d0d447664b6a6d45b8f2eea00715903594ebd55328fb87bb628f78eaa9ae" }, "downloads": -1, "filename": "urlscan_py-1.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "33189f65f51acd487c65b91b616fb895", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5122, "upload_time": "2018-09-20T15:29:19", "url": "https://files.pythonhosted.org/packages/7f/90/89a141281aaaf5e7d0e56ad64daa5fb511a264317a7ea462c22c1aad841c/urlscan_py-1.0.1-py2.py3-none-any.whl" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "23c12f964be5891c764313eb6a234e29", "sha256": "4109c4a920726bfc3a850ebd6546d92bad3384a2cc79c40e5cf71aae88a30b4d" }, "downloads": -1, "filename": "urlscan_py-1.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "23c12f964be5891c764313eb6a234e29", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5226, "upload_time": "2018-11-28T17:30:20", "url": "https://files.pythonhosted.org/packages/76/a5/97ea4587042998bf25544a9c75808e9ab12ecdfd71f9c7d52d21481131a0/urlscan_py-1.0.2-py2.py3-none-any.whl" } ], "1.0.2.1": [ { "comment_text": "", "digests": { "md5": "4cb4cea018b3665d0b0b4b7e895d4097", "sha256": "db9d479943fd7cebd655fc3b0c23652a6baad23bb29fb6f25a012b76ba88e18d" }, "downloads": -1, "filename": "urlscan_py-1.0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4cb4cea018b3665d0b0b4b7e895d4097", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5376, "upload_time": "2018-11-28T17:50:34", "url": "https://files.pythonhosted.org/packages/65/da/319e0f489e19d2f950ed6067c36427cf9c9c62e16a69880019001dc0daa3/urlscan_py-1.0.2.1-py2.py3-none-any.whl" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "464250c115ae9baf57cd1636baea2590", "sha256": "5bbaaec6157fb4b9f549b5283ad243e2c1e8ce43b58b56090476ae8cc534624d" }, "downloads": -1, "filename": "urlscan_py-1.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "464250c115ae9baf57cd1636baea2590", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5357, "upload_time": "2018-11-28T18:02:03", "url": "https://files.pythonhosted.org/packages/77/02/cd7d1f3714241b6e45296f94c369cdaa3d2e34abffaffc92b35e4b61cec9/urlscan_py-1.0.3-py2.py3-none-any.whl" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "7106064f7d7b84a56c9e43bdea5c4fc6", "sha256": "f40442acaa6d5b64ab8668849cbf515ea1882e85b2bc5cd62ef18fb6913815ec" }, "downloads": -1, "filename": "urlscan_py-1.0.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7106064f7d7b84a56c9e43bdea5c4fc6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5359, "upload_time": "2018-11-28T18:04:59", "url": "https://files.pythonhosted.org/packages/61/60/ec9caa5e961eea897e00a6ea7320a91b174940ff7b684f0b1ab4ebbd67a0/urlscan_py-1.0.4-py2.py3-none-any.whl" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "62577bffbbd1f1097edbc7c4d0c0e759", "sha256": "bfcc16906584eb42f505410d73539ad733d9cd30d0e585e759677c4159df683b" }, "downloads": -1, "filename": "urlscan-py-1.0.5.tar.gz", "has_sig": false, "md5_digest": "62577bffbbd1f1097edbc7c4d0c0e759", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5221, "upload_time": "2019-08-02T19:06:57", "url": "https://files.pythonhosted.org/packages/ec/44/1bfa440f83c9272d6c0b5a35063ae3d1c5d637a398c104c33ebe9b5955f5/urlscan-py-1.0.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "62577bffbbd1f1097edbc7c4d0c0e759", "sha256": "bfcc16906584eb42f505410d73539ad733d9cd30d0e585e759677c4159df683b" }, "downloads": -1, "filename": "urlscan-py-1.0.5.tar.gz", "has_sig": false, "md5_digest": "62577bffbbd1f1097edbc7c4d0c0e759", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5221, "upload_time": "2019-08-02T19:06:57", "url": "https://files.pythonhosted.org/packages/ec/44/1bfa440f83c9272d6c0b5a35063ae3d1c5d637a398c104c33ebe9b5955f5/urlscan-py-1.0.5.tar.gz" } ] }