scanless


Namescanless JSON
Version 2.2.1 PyPI version JSON
download
home_pagehttps://github.com/vesche/scanless
SummaryAn online port scan scraper.
upload_time2023-03-23 18:44:47
maintainer
docs_urlNone
authorAustin Jackson
requires_python
licenseUnlicense
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # scanless

This is a Python command-line utility and library for using websites that can perform port scans on your behalf.

## Supported Online Port Scanners

* [ipfingerprints](http://www.ipfingerprints.com/portscan.php)
* [spiderip](https://spiderip.com/online-port-scan.php)
* [standingtech](https://portscanner.standingtech.com/)
* [viewdns](http://viewdns.info/)
* [yougetsignal](http://www.yougetsignal.com/tools/open-ports/)

## Install

Do it up:
```
$ pip install scanless --user
```

## CLI Usage

```
$ scanless --help
usage: scanless [-h] [-v] [-t TARGET] [-s SCANNER] [-r] [-l] [-a] [-d]

scanless, an online port scan scraper.

options:
  -h, --help            show this help message and exit
  -v, --version         display the current version
  -t TARGET, --target TARGET
                        ip or domain to scan
  -s SCANNER, --scanner SCANNER
                        scanner to use (default: yougetsignal)
  -r, --random          use a random scanner
  -l, --list            list scanners
  -a, --all             use all the scanners
  -d, --debug           debug mode (cli mode off & show network errors)

$ scanless --list
+----------------+--------------------------------------+
| Scanner Name   | Website                              |
+----------------+--------------------------------------+
| ipfingerprints | https://www.ipfingerprints.com       |
| spiderip       | https://spiderip.com                 |
| standingtech   | https://portscanner.standingtech.com |
| viewdns        | https://viewdns.info                 |
| yougetsignal   | https://www.yougetsignal.com         |
+----------------+--------------------------------------+

$ scanless -t scanme.nmap.org -s spiderip
Running scanless v2.2.1 ...

spiderip:
PORT      STATE  SERVICE
21/tcp    closed ftp
22/tcp    open   ssh
25/tcp    closed smtp
80/tcp    open   http
110/tcp   closed pop3
143/tcp   closed imap
443/tcp   closed https
465/tcp   closed smtps
993/tcp   closed imaps
995/tcp   closed pop3s
1433/tcp  closed ms-sql-s
3306/tcp  closed mysql
3389/tcp  closed ms-wbt-server
5900/tcp  closed vnc
8080/tcp  closed http-proxy
8443/tcp  closed https-alt
```

## Library Usage

```
>>> import scanless
>>> sl = scanless.Scanless()
>>> output = sl.scan('scanme.nmap.org', scanner='yougetsignal')
>>> print(output['raw'])
PORT      STATE  SERVICE
21/tcp    closed ftp
22/tcp    open   ssh
23/tcp    closed telnet
25/tcp    closed smtp
53/tcp    closed domain
80/tcp    open   http
110/tcp   closed pop3
115/tcp   closed sftp
135/tcp   closed msrpc
139/tcp   closed netbios-ssn
143/tcp   closed imap
194/tcp   closed irc
443/tcp   closed https
445/tcp   closed microsoft-ds
1433/tcp  closed ms-sql-s
3306/tcp  closed mysql
3389/tcp  closed ms-wbt-server
5632/tcp  closed pcanywherestat
5900/tcp  closed vnc
6112/tcp  closed dtspc
>>> import json
>>> print(json.dumps(output['parsed'], indent=2))
[
  {
    "port": "21",
    "state": "closed",
    "service": "ftp",
    "protocol": "tcp"
  },
  {
    "port": "22",
    "state": "open",
    "service": "ssh",
    "protocol": "tcp"
  },
  {
    "port": "23",
    "state": "closed",
    "service": "telnet",
    "protocol": "tcp"
  },
  {
    "port": "25",
    "state": "closed",
    "service": "smtp",
    "protocol": "tcp"
  },
  {
    "port": "53",
    "state": "closed",
    "service": "domain",
    "protocol": "tcp"
  },
  {
    "port": "80",
    "state": "open",
    "service": "http",
    "protocol": "tcp"
  },
  ...
]
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/vesche/scanless",
    "name": "scanless",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "",
    "author": "Austin Jackson",
    "author_email": "vesche@protonmail.com",
    "download_url": "https://files.pythonhosted.org/packages/50/d0/89d4922f4f6f0faa3be4f6ae455a13d049068ae45a83ec70cf795cd7ae06/scanless-2.2.1.tar.gz",
    "platform": null,
    "description": "# scanless\n\nThis is a Python command-line utility and library for using websites that can perform port scans on your behalf.\n\n## Supported Online Port Scanners\n\n* [ipfingerprints](http://www.ipfingerprints.com/portscan.php)\n* [spiderip](https://spiderip.com/online-port-scan.php)\n* [standingtech](https://portscanner.standingtech.com/)\n* [viewdns](http://viewdns.info/)\n* [yougetsignal](http://www.yougetsignal.com/tools/open-ports/)\n\n## Install\n\nDo it up:\n```\n$ pip install scanless --user\n```\n\n## CLI Usage\n\n```\n$ scanless --help\nusage: scanless [-h] [-v] [-t TARGET] [-s SCANNER] [-r] [-l] [-a] [-d]\n\nscanless, an online port scan scraper.\n\noptions:\n  -h, --help            show this help message and exit\n  -v, --version         display the current version\n  -t TARGET, --target TARGET\n                        ip or domain to scan\n  -s SCANNER, --scanner SCANNER\n                        scanner to use (default: yougetsignal)\n  -r, --random          use a random scanner\n  -l, --list            list scanners\n  -a, --all             use all the scanners\n  -d, --debug           debug mode (cli mode off & show network errors)\n\n$ scanless --list\n+----------------+--------------------------------------+\n| Scanner Name   | Website                              |\n+----------------+--------------------------------------+\n| ipfingerprints | https://www.ipfingerprints.com       |\n| spiderip       | https://spiderip.com                 |\n| standingtech   | https://portscanner.standingtech.com |\n| viewdns        | https://viewdns.info                 |\n| yougetsignal   | https://www.yougetsignal.com         |\n+----------------+--------------------------------------+\n\n$ scanless -t scanme.nmap.org -s spiderip\nRunning scanless v2.2.1 ...\n\nspiderip:\nPORT      STATE  SERVICE\n21/tcp    closed ftp\n22/tcp    open   ssh\n25/tcp    closed smtp\n80/tcp    open   http\n110/tcp   closed pop3\n143/tcp   closed imap\n443/tcp   closed https\n465/tcp   closed smtps\n993/tcp   closed imaps\n995/tcp   closed pop3s\n1433/tcp  closed ms-sql-s\n3306/tcp  closed mysql\n3389/tcp  closed ms-wbt-server\n5900/tcp  closed vnc\n8080/tcp  closed http-proxy\n8443/tcp  closed https-alt\n```\n\n## Library Usage\n\n```\n>>> import scanless\n>>> sl = scanless.Scanless()\n>>> output = sl.scan('scanme.nmap.org', scanner='yougetsignal')\n>>> print(output['raw'])\nPORT      STATE  SERVICE\n21/tcp    closed ftp\n22/tcp    open   ssh\n23/tcp    closed telnet\n25/tcp    closed smtp\n53/tcp    closed domain\n80/tcp    open   http\n110/tcp   closed pop3\n115/tcp   closed sftp\n135/tcp   closed msrpc\n139/tcp   closed netbios-ssn\n143/tcp   closed imap\n194/tcp   closed irc\n443/tcp   closed https\n445/tcp   closed microsoft-ds\n1433/tcp  closed ms-sql-s\n3306/tcp  closed mysql\n3389/tcp  closed ms-wbt-server\n5632/tcp  closed pcanywherestat\n5900/tcp  closed vnc\n6112/tcp  closed dtspc\n>>> import json\n>>> print(json.dumps(output['parsed'], indent=2))\n[\n  {\n    \"port\": \"21\",\n    \"state\": \"closed\",\n    \"service\": \"ftp\",\n    \"protocol\": \"tcp\"\n  },\n  {\n    \"port\": \"22\",\n    \"state\": \"open\",\n    \"service\": \"ssh\",\n    \"protocol\": \"tcp\"\n  },\n  {\n    \"port\": \"23\",\n    \"state\": \"closed\",\n    \"service\": \"telnet\",\n    \"protocol\": \"tcp\"\n  },\n  {\n    \"port\": \"25\",\n    \"state\": \"closed\",\n    \"service\": \"smtp\",\n    \"protocol\": \"tcp\"\n  },\n  {\n    \"port\": \"53\",\n    \"state\": \"closed\",\n    \"service\": \"domain\",\n    \"protocol\": \"tcp\"\n  },\n  {\n    \"port\": \"80\",\n    \"state\": \"open\",\n    \"service\": \"http\",\n    \"protocol\": \"tcp\"\n  },\n  ...\n]\n```\n",
    "bugtrack_url": null,
    "license": "Unlicense",
    "summary": "An online port scan scraper.",
    "version": "2.2.1",
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "50d089d4922f4f6f0faa3be4f6ae455a13d049068ae45a83ec70cf795cd7ae06",
                "md5": "f1e67d8fbe6aa278ad6b6e8d9a7546dc",
                "sha256": "a9cb298ddea51f3c1d119db70f8420b05b0ededa958b8119181a801e3f50530a"
            },
            "downloads": -1,
            "filename": "scanless-2.2.1.tar.gz",
            "has_sig": false,
            "md5_digest": "f1e67d8fbe6aa278ad6b6e8d9a7546dc",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 216458,
            "upload_time": "2023-03-23T18:44:47",
            "upload_time_iso_8601": "2023-03-23T18:44:47.990202Z",
            "url": "https://files.pythonhosted.org/packages/50/d0/89d4922f4f6f0faa3be4f6ae455a13d049068ae45a83ec70cf795cd7ae06/scanless-2.2.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-03-23 18:44:47",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "vesche",
    "github_project": "scanless",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "scanless"
}
        
Elapsed time: 0.05251s