Skip to content

Commit e1c00a5

Browse files
committed
prepared package for pypi
1 parent 75d1bb5 commit e1c00a5

5 files changed

Lines changed: 108 additions & 46 deletions

File tree

MANIFEST.in

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
include *.txt
2-
recursive-include docs *.txt
1+
include TODO
2+
recursive-include docs *.txt *.md *.rst

README.md

Lines changed: 0 additions & 40 deletions
This file was deleted.

README.rst

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
python-libnmap
2+
==============
3+
4+
Code status
5+
-----------
6+
7+
|Build Status|
8+
9+
Use cases
10+
---------
11+
12+
libnmap is a python library enabling python developpers to manipulate nmap process and data.
13+
14+
libnmap is what you were looking for if you need to implement the following:
15+
16+
- automate or schedule nmap scans on a regular basis
17+
- manipulate nmap scans results to do reporting for instance
18+
- compare and diff nmap scans to generate graphs for instance
19+
- batch process scan reports
20+
- ...
21+
22+
The above uses cases will be easy to implement with the help of the libnmap modules.
23+
24+
libnmap modules
25+
---------------
26+
27+
The lib currently offers the following modules:
28+
29+
- process: enables you to launch nmap scans
30+
- parse: enables you to parse nmap reports or scan results (only XML so far) from a file, a string,...
31+
- report: enables you to manipulate a parsed scan result and de/serialize scan results in a json format
32+
- diff: enables you to see what changed between two scans
33+
- common: contains basic nmap objects like NmapHost and NmapService. It is to note that each object can be "diff()ed" with another similar object.
34+
- plugins: enables you to support datastores for your scan results directly in the "NmapReport" object from report module:
35+
36+
- mongodb: only plugin implemented so far, ultra basic, for POC purpose only
37+
- sqlalchemy: on-going
38+
- csv: todo (easy to implement)
39+
- elastic search: todo
40+
41+
Documentation
42+
-------------
43+
44+
All the documentation is available on `read the docs`_. This documentation contains small code samples that you directly reuse.
45+
46+
Dependencies
47+
------------
48+
49+
libnmap has by default no dependencies.
50+
51+
The only additional python modules you'll have to install depends if you wish to use libnmap to store reports on an exotic data store via libnmap's independents plugins.
52+
53+
Below the list of optional dependencies:
54+
55+
- sqlite3
56+
- pymongo
57+
58+
Install
59+
-------
60+
61+
You can install libnmap via pip:
62+
63+
```
64+
pip install libnmap
65+
```
66+
67+
or via git:
68+
69+
```
70+
$ git clone https://github.com/savon-noir/python-libnmap.git
71+
$ cd python-libnmap
72+
$ python setup.py install
73+
```
74+
75+
Examples
76+
--------
77+
78+
Some codes samples are available in the examples directory or in the `documentation`_.
79+
80+
Contributors
81+
------------
82+
83+
Mike @bmx0r Boutillier for S3 and SQL-Alechemy plugins and for the constructive critics. Thanks!
84+
85+
.. |Build Status| image:: https://travis-ci.org/savon-noir/python-libnmap.png?branch=master
86+
:target: https://travis-ci.org/savon-noir/python-libnmap
87+
88+
.. _read the docs: https://libnmap.readthedocs.org
89+
90+
.. _documentation: https://libnmap.readthedocs.org

TODO

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
- review and improve threading for NmapProcess
22
- complete unit tests
3+
- XML interface to support both ElementTree and lxml APIs
4+
- support for python3
5+
- support for windows
36
- Add new plugins to support import/export from mysql, couchdb, csv
47
- support iterators for NmapReport::hosts
58
- add unittest for udp scans, ping sweeping

setup.py

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,23 @@
11
from distutils.core import setup
22

3+
with open("README.rst") as rfile:
4+
long_description = rfile.read()
5+
36
setup(
4-
name='libnmap',
7+
name='python-libnmap',
58
version='0.2.1',
69
author='Ronald Bister',
710
author_email='mini.pelle@gmail.com',
811
packages=['libnmap', 'libnmap.plugins', 'libnmap.test'],
912
url='http://pypi.python.org/pypi/libnmap/',
1013
license='LICENSE.txt',
11-
description="""A Python NMAP librairy enabling you to launch nmap scans,
12-
parse and compare (diff) scan results""",
13-
long_description=open('README.md').read(),
14+
description=('A Python NMAP library enabling you to launch nmap scans',
15+
'parse and compare (diff) scan results'),
16+
long_description=long_description
17+
classifiers=["Development Status :: 5 - Production/Stable",
18+
"Environment :: Console",
19+
"Programming Language :: Python :: 2.6",
20+
"Programming Language :: Python :: 2.7",
21+
"Topic :: System :: Networking",
22+
"Topic :: Software Development :: Libraries :: Python Modules"],
1423
)

0 commit comments

Comments
 (0)