{ "info": { "author": "m8r0wn", "author_email": "m8r0wn@protonmail.com", "bugtrack_url": null, "classifiers": [ "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3" ], "description": "# IPParser\n\nThe IPParser Python module was created to simplify accepting IPv4 addresses, DNS names, and target / host information when creating other security or network tools. User inputs are taken and parsed to provide a list of IPv4 addresses or DNS names that can be used for iteration. If called with ```resolve=True```, ipparser will attempt to perform \"A\" record lookups and returns all IP addresses found for the host.\n\n#### Inputs:\nIPParser currently accepts the following user inputs:\n* Single IP (192.168.1.10)\n* IP ranges (192.168.1.1-55)\n* Multiple IP's (192.168.1.3,192.168.1.7,m8r0wn.com)\n* CIDR Ranges /8-/32 (192.168.1.0/24)\n* URL's (https://m8r0wn.com/demo)\n* IP:Port (192.168.1.1:8080)\n* DNS Names (m8r0wn.com)\n* TXT files (Containing any of the items listed)\n\n## Install\n```bash\npip3 install ipparser\n```\nOR \n```bash\ngit clone https://github.com/m8r0wn/ipparser\ncd ipparser\npython3 setup.py install\n```\n\n## Usage:\nThe IPParser function can be called with the following arguments (shown with their default values):\n* ```resolve=False``` - Resolve any DNS names identified, to IPv4 addresses, and append to output.\n* ```silent=False``` - Do not show errors while parsing.\n* ```exit_on_error=True``` - Exit on errors found while parsing user input.\n* ```debug=False``` - Show input classification for debugging.\n\n## Examples\n```python\n>>> from ipparser import ipparser\n>>> ipparser('192.168.1.3-5')\n['192.168.1.3', '192.168.1.4', '192.168.1.5']\n\n>>> ipparser('yahoo.com',resolve=True)\n['98.138.219.232', '98.138.219.231', '72.30.35.9', '72.30.35.10', '98.137.246.7', '98.137.246.8']\n\n>>> ipparser('example', resolve=True, exit_on_error=False)\nIPParser Error: Invalid or unsupported input provided 'example'\n\n>>> ipparser('192.168.1.1,yahoo.com')\n['192.168.1.1', 'yahoo.com']\n\nipparser('192.168.1.1,yahoo.com,example', resolve=True, exit_on_error=False)\nIPParser Error: Invalid or unsupported input provided 'example'\n['192.168.1.1', '98.138.219.231', '98.137.246.8', '98.137.246.7', '72.30.35.9', '98.138.219.232', '72.30.35.10']\n\n>>> ipparser('192.168.1.1,yahoo.com,example', resolve=True, silent=True)\n['192.168.1.1', '72.30.35.10', '98.138.219.231', '98.137.246.7', '98.137.246.8', '72.30.35.9', '98.138.219.232']\n```\n\n## Argparse Integration\n* Standard Argument:\n```python\nfrom ipparser import ipparser\nfrom argparse import ArgumentParser\n\nargs = ArgumentParser(description='ipparser integration with argparse')\nargs.add_argument('-host', dest='host', default=False, type=lambda x: ipparser(x), help='Host Input')\nargs = args.parse_args()\n```\n```\nNamespace(host=['192.168.1.1'])\n```\n\n* Required Positional Argument (Method 1):\n```python\nfrom ipparser import ipparser\nfrom argparse import ArgumentParser\n\nargs = ArgumentParser(description='ipparser integration with argparse')\nargs.add_argument(dest='positional_host', nargs='+', type=lambda x: ipparser(x, resolve=False), help='Host Input')\nargs = args.parse_args()\n```\n```\nNamespace(positional_host=[['192.168.1.1']])\n```\n\n* Required Positional Argument (Method 2):\n```python\nfrom ipparser import ipparser\nfrom argparse import ArgumentParser\n\nargs = ArgumentParser(description='ipparser integration with argparse')\nargs.add_argument(dest='positional_host', nargs='+', help='Host Input')\nargs = args.parse_args()\nargs.positional_host = ipparser(args.positional_host[0]) \n```\n```\npositional_host=['192.168.1.1'])\n```\n\n* Allow user args to determine resolve setting:\n```python\nfrom sys import argv\nfrom ipparser import ipparser\nfrom argparse import ArgumentParser\n\nr = False\nif \"-r\" in argv:\n r = True\n \nargs = ArgumentParser(description='ipparser integration with argparse')\nargs.add_argument('-r', dest='resolve',action='store_true', help='Resolve input DNS hosts')\nargs.add_argument(dest='positional_host', nargs='+', type=lambda x: ipparser(x, resolve=r), help='Host Input')\nargs = args.parse_args()\n```\n\n## Sys.argv Usage\n* Standard Argument\n```python\nfrom sys import argv\nfrom ipparser import ipparser\n\nif \"-host\" in argv:\n host = ipparser(argv[argv.index(\"-host\") + 1])\n```\n```\nhost = ['192.168.1.1']\n```\n\n* Positional Argument\n```python\nfrom sys import argv\nfrom ipparser import ipparser\n\nhost = ipparser(argv[-1])\n```\n```\nhost = ['192.168.1.1']\n```\n\n## Contributors\n* [@darneymartin](https://github.com/darneymartin)", "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/m8r0wn/ipparser", "keywords": "", "license": "BSD 3-clause", "maintainer": "", "maintainer_email": "", "name": "ipparser", "package_url": "https://pypi.org/project/ipparser/", "platform": "", "project_url": "https://pypi.org/project/ipparser/", "project_urls": { "Homepage": "https://github.com/m8r0wn/ipparser" }, "release_url": "https://pypi.org/project/ipparser/0.3.5/", "requires_dist": null, "requires_python": "", "summary": "Parse IP address information and return a list for iteration.", "version": "0.3.5" }, "last_serial": 5189111, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "4672d0afb1b2c8c60627d2194bc460ef", "sha256": "c1cec2179945d55e95a4cecbc2c1eeea6ec2c207ad5755437ee7595378ef24dc" }, "downloads": -1, "filename": "ipparser-0.1.tar.gz", "has_sig": false, "md5_digest": "4672d0afb1b2c8c60627d2194bc460ef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3358, "upload_time": "2019-04-04T15:11:21", "url": "https://files.pythonhosted.org/packages/7e/9e/495d48a0d14ca7514cc44f70b1a463334f32cfe97618b55096d1528e737a/ipparser-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "16277d283994f8cd5a796cc65dd7d34f", "sha256": "71d45c0fecb854ddf93cfc165672731a32a378766e940681a96b40cabbbf76c2" }, "downloads": -1, "filename": "ipparser-0.2.tar.gz", "has_sig": false, "md5_digest": "16277d283994f8cd5a796cc65dd7d34f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3599, "upload_time": "2019-04-04T20:08:26", "url": "https://files.pythonhosted.org/packages/5f/b4/8dcb0ee7d29d63aff2fbf9bfb2d43caa176aeab2bab9cda968edf3d133b6/ipparser-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "9e48006101d7f51c617686b8e62f9f02", "sha256": "7a8cbcd63c17745f69517b543174f532a3bce111d03c8f512d1b0b451a5a91dc" }, "downloads": -1, "filename": "ipparser-0.3.tar.gz", "has_sig": false, "md5_digest": "9e48006101d7f51c617686b8e62f9f02", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4068, "upload_time": "2019-04-05T14:52:21", "url": "https://files.pythonhosted.org/packages/77/b0/16ce07657266506a5ff5ece2ab30a5b17217769d064d769a21328afb3003/ipparser-0.3.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "e25a719284e2cad6cd73b2d1ec79a38d", "sha256": "17d205ce4fc53a786256ce7c23c4d75773c360221886bcc9c156240f62e607f7" }, "downloads": -1, "filename": "ipparser-0.3.1.tar.gz", "has_sig": false, "md5_digest": "e25a719284e2cad6cd73b2d1ec79a38d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4245, "upload_time": "2019-04-15T12:14:30", "url": "https://files.pythonhosted.org/packages/11/d4/3f158434b2e646cf4177712d6355baed048e8220cc7c2365b60d45dc1179/ipparser-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "be9f766f181ad87dc06e0b12248157e3", "sha256": "f8a7463ec463fde394890d6895a7089e1409b7495917ad60448d2f64eb4ce62a" }, "downloads": -1, "filename": "ipparser-0.3.2.tar.gz", "has_sig": false, "md5_digest": "be9f766f181ad87dc06e0b12248157e3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4248, "upload_time": "2019-04-15T18:12:21", "url": "https://files.pythonhosted.org/packages/79/c1/61423bcba288f24a563625416f3eaa226ff276c17583fb58f3c63675fe76/ipparser-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "95136f799481cb3c95c50fcc523469a5", "sha256": "892692849ec6310f833f5685c0d63c29bd044d114c72f8e9edbddd1d63a6c8c8" }, "downloads": -1, "filename": "ipparser-0.3.3.tar.gz", "has_sig": false, "md5_digest": "95136f799481cb3c95c50fcc523469a5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4254, "upload_time": "2019-04-18T12:50:12", "url": "https://files.pythonhosted.org/packages/06/f5/c7042ea64fc224f4d386f762f8c19cfe9e76eabf7b36fa5d1e41d8559e84/ipparser-0.3.3.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "bc87d84d7335a3c7003ad70cd195272c", "sha256": "04a8488136f4903ecebb7e05649b71eeb598fa9f2e5e610d770320dee880c9b5" }, "downloads": -1, "filename": "ipparser-0.3.4.tar.gz", "has_sig": false, "md5_digest": "bc87d84d7335a3c7003ad70cd195272c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4117, "upload_time": "2019-04-23T18:08:31", "url": "https://files.pythonhosted.org/packages/f1/b0/0fcf977c84cbf016f25bb5f747d6ddb515bd946c2f4634aad3e5637be22b/ipparser-0.3.4.tar.gz" } ], "0.3.5": [ { "comment_text": "", "digests": { "md5": "a749c6e72ce2f31ad0a35539a5da6932", "sha256": "744e1514a08025d5ae688aef94c850352ba53361d0e2c01867f8d910644b1872" }, "downloads": -1, "filename": "ipparser-0.3.5.tar.gz", "has_sig": false, "md5_digest": "a749c6e72ce2f31ad0a35539a5da6932", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4141, "upload_time": "2019-04-25T17:29:47", "url": "https://files.pythonhosted.org/packages/d3/9d/aeaa797f7278c6dca39b6878a252b03e70cd09a2b956f56bfdcc186cc9ba/ipparser-0.3.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a749c6e72ce2f31ad0a35539a5da6932", "sha256": "744e1514a08025d5ae688aef94c850352ba53361d0e2c01867f8d910644b1872" }, "downloads": -1, "filename": "ipparser-0.3.5.tar.gz", "has_sig": false, "md5_digest": "a749c6e72ce2f31ad0a35539a5da6932", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4141, "upload_time": "2019-04-25T17:29:47", "url": "https://files.pythonhosted.org/packages/d3/9d/aeaa797f7278c6dca39b6878a252b03e70cd09a2b956f56bfdcc186cc9ba/ipparser-0.3.5.tar.gz" } ] }