Python library and command-line utility for Shodan (https://developer.shodan.io)
.. image:: https://img.shields.io/pypi/v/shodan.svg :target: https://pypi.org/project/shodan/
.. image:: https://img.shields.io/github/contributors/achillean/shodan-python.svg :target: https://github.com/achillean/shodan-python/graphs/contributors
Shodan is a search engine for Internet-connected devices. Google lets you search for websites, Shodan lets you search for devices. This library provides developers easy access to all of the data stored in Shodan in order to automate tasks and integrate into existing tools.
Fast/ bulk IP lookups <https://help.shodan.io/developer-fundamentals/looking-up-ip-info>
_Network alerts (aka private firehose) <https://help.shodan.io/guides/how-to-monitor-network>
_Manage Email Notifications <https://asciinema.org/a/7WvyDtNxn0YeNU70ozsxvXDmL>
_Command-line interface <https://cli.shodan.io>
_.. image:: https://cli.shodan.io/img/shodan-cli-preview.png :target: https://asciinema.org/~Shodan :width: 400px :align: center
.. code-block:: python
from shodan import Shodan
api = Shodan('MY API KEY')
# Lookup an IP
ipinfo = api.host('8.8.8.8')
print(ipinfo)
# Search for websites that have been "hacked"
for banner in api.search_cursor('http.title:"hacked by"'):
print(banner)
# Get the total number of industrial control systems services on the Internet
ics_services = api.count('tag:ics')
print('Industrial Control Systems: {}'.format(ics_services['total']))
Grab your API key from https://account.shodan.io
To install the Shodan library, simply:
.. code-block:: bash
$ pip install shodan
Or if you don't have pip installed (which you should seriously install):
.. code-block:: bash
$ easy_install shodan
Documentation is available at https://shodan.readthedocs.org/ and https://help.shodan.io