{ "info": { "author": "Floyd Hightower", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5" ], "description": "===============================\nXN Twist\n===============================\n\n*Find Unicode domain squats*\n\n.. image:: https://img.shields.io/pypi/v/xn-twist.svg\n :target: https://pypi.python.org/pypi/xn-twist\n\n.. image:: https://travis-ci.org/xn-twist/xn-twist.svg?branch=master\n :target: https://travis-ci.org/xn-twist/xn-twist\n\n.. image:: https://codecov.io/gh/xn-twist/xn-twist/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/xn-twist/xn-twist\n\n.. image:: https://api.codacy.com/project/badge/Grade/166ee00207f5497da6316e35f4262bc0\n :alt: Codacy Badge\n :target: https://www.codacy.com/app/fhightower/xn-twist\n\n.. image:: https://pyup.io/repos/github/xn-twist/xn-twist/shield.svg\n :target: https://pyup.io/repos/github/xn-twist/xn-twist/\n :alt: Updates\n\nInstallation\n============\n\nStable release\n--------------\n\nTo install XN Twist, run this command in your terminal:\n\n.. code-block:: console\n\n pip install xn-twist\n\nThis is the preferred method to install XN Twist, as it will always install the most recent stable release. \n\nIf you don't have `pip`_ installed, this `Python installation guide`_ can guide\nyou through the process.\n\n.. _pip: https://pip.pypa.io\n.. _Python installation guide: http://docs.python-guide.org/en/latest/starting/installation/\n\nFrom sources\n------------\n\nThe sources for XN Twist can be downloaded from the `Github repo`_.\n\nYou can either clone the public repository:\n\n.. code-block:: console\n\n $ git clone git://github.com/xn-twist/xn-twist\n\nOr download the `tarball`_:\n\n.. code-block:: console\n\n $ curl -OL https://github.com/xn-twist/xn-twist/tarball/master\n\nOnce you have a copy of the source, you can install it with:\n\n.. code-block:: console\n\n $ python setup.py install\n\n.. _Github repo: https://github.com/xn-twist/xn-twist\n.. _tarball: https://github.com/xn-twist/xn-twist/tarball/master\n\nUsage\n=====\n\nVia Python\n----------\n\nYou can use XN-Twist in a script as follows:\n\n.. code-block:: python\n\n from xn_twist import XNTwist\n xn = XNTwist()\n twist_results = xn.twist('example.com')\n\nThe following parameters can be passed into the initialization of the ``XNTwist`` object:\n\n- ``query_dns``: Specify whether or not you would like to query dns values for the domains. Defaults to ``False``. **Be aware that setting this value to ``True`` will slow the twisting process down significantly.**\n- ``output``: Specify an output file to which the json output of the algorithm will be written.\n\nWhen calling the ``twist()`` function, there is an optional ``limit`` value which limits the number of characters used as a spoofs. This cuts down on the processing load and makes the results manageable. An example usage is shown below.\n\n.. code-block:: python\n\n from xn_twist import XNTwist\n xn = XNTwist()\n twist_results = xn.twist('example.com', limit=2)\n\nWhen calling the ``twist()`` function, there is an optional ``simple`` value which only returns possible domain squats with one character changed rather than all of the possible permutations (the default is ``FALSE``). This cuts down on the processing load and makes the results manageable. An example usage is shown below.\n\n.. code-block:: python\n\n from xn_twist import XNTwist\n xn = XNTwist()\n twist_results = xn.twist('example.com', simple=True)\n\nThe response will be json that looks something like:\n\n.. code-block:: json\n\n {\n \"datetime\": \"2018-04-06 05:33:45.889048\",\n \"possible_squats\": [\n {\n \"displayed\": \"\\u0430.com\",\n \"punycode\": \"xn--80a.com\"\n },\n {\n \"displayed\": \"\\u0105.com\",\n \"punycode\": \"xn--2da.com\"\n },\n {\n \"displayed\": \"\\u03ac.com\",\n \"punycode\": \"xn--hxa.com\"\n },\n {\n \"displayed\": \"\\u00e1.com\",\n \"punycode\": \"xn--1ca.com\"\n },\n {\n \"displayed\": \"\\u01ce.com\",\n \"punycode\": \"xn--tja.com\"\n },\n {\n \"displayed\": \"\\u1f05.com\",\n \"punycode\": \"xn--ing.com\"\n },\n {\n \"displayed\": \"\\u01df.com\",\n \"punycode\": \"xn--bka.com\"\n },\n {\n \"displayed\": \"\\u1f00.com\",\n \"punycode\": \"xn--dng.com\"\n },\n {\n \"displayed\": \"\\u1f01.com\",\n \"punycode\": \"xn--eng.com\"\n },\n {\n \"displayed\": \"\\u00e4.com\",\n \"punycode\": \"xn--4ca.com\"\n }\n ],\n \"count\": 10,\n \"xn_twist_version\": \"1.2.0\"\n }\n\nVia Command Line\n----------------\n\nYou can use XN-Twist from the command line as follows:\n\n.. code-block:: shell\n\n xntwist example.com\n\nThe usage for the command line form of XN-Twist is as follows:\n\n.. code-block::\n\n XN Twist.\n\n Usage:\n xntwist [--limit=LIMIT] [--dns] [--output=OUTPUT]\n xntwist (-h | --help)\n xntwist --version\n\n Options:\n -h --help Show this screen.\n --version Show version.\n -l=LIMIT --limit=LIMIT Limit the number of characters used as spoofs [default: 5].\n -d --dns Query DNS for each domain.\n -o=OUTPUT --output=OUTPUT Specify an output file.\n\nRun Tests\n=========\n\nAfter cloning the repo, you can test it using the following commands from the base directory of this repository:\n\n.. code-block:: shell\n\n make test\n\nData, Data, Everywhere...\n==========================\n\nThis project relies on a dataset. More details on how to access the dataset and even how to help us build it coming soon!\n\nCredits\n=======\n\nThis package was created with Cookiecutter_ and the `fhightower/python-project-template`_ project template.\n\n.. _Cookiecutter: https://github.com/audreyr/cookiecutter\n.. _`fhightower/python-project-template`: https://github.com/fhightower/python-project-template\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/xn-twist/xn-twist", "keywords": "xn_twist", "license": "MIT license", "maintainer": "", "maintainer_email": "", "name": "xn-twist", "package_url": "https://pypi.org/project/xn-twist/", "platform": "", "project_url": "https://pypi.org/project/xn-twist/", "project_urls": { "Homepage": "https://github.com/xn-twist/xn-twist" }, "release_url": "https://pypi.org/project/xn-twist/1.4.0/", "requires_dist": [ "dnspython", "docopt (>=0.6)", "tldextract", "xn-twist-python-sdk" ], "requires_python": "", "summary": "Unicode Domain-Squat Finder", "version": "1.4.0" }, "last_serial": 4918795, "releases": { "0.3.0": [], "0.3.1": [ { "comment_text": "", "digests": { "md5": "4856b8fc662579ccdcfa6c9b231278fc", "sha256": "1b89c9e61e88df39ae6dc737bc32523211edd8690dda1298cdc36390341d9222" }, "downloads": -1, "filename": "xn_twist-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4856b8fc662579ccdcfa6c9b231278fc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7851, "upload_time": "2017-06-11T01:35:15", "url": "https://files.pythonhosted.org/packages/d6/7f/ddb2870b85baf0e03c602b6e38b84a0ecfefc26bd5ed7af28ea271b0982b/xn_twist-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "eb53fc2b7ebed7052252764d9d8214ea", "sha256": "042dde137484cb7082fb9d08d8594e12bf93e6abf80ad560d7dad0661ec6f05b" }, "downloads": -1, "filename": "xn-twist-0.3.1.tar.gz", "has_sig": false, "md5_digest": "eb53fc2b7ebed7052252764d9d8214ea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13764, "upload_time": "2017-06-11T01:35:16", "url": "https://files.pythonhosted.org/packages/57/66/9a467f9c7612894ac4e091d05354efc5e7fcbffc2526caa7b506f1696a07/xn-twist-0.3.1.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "efca0f158d8713f2b4c4623f30cc293d", "sha256": "2ab3cff0560894c6981a1e98a6a3117ac3d5be7059da9b331f214ddcfa08111f" }, "downloads": -1, "filename": "xn_twist-1.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "efca0f158d8713f2b4c4623f30cc293d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7996, "upload_time": "2017-09-09T01:21:58", "url": "https://files.pythonhosted.org/packages/af/71/265d03466cea5ca2b26e18207caf1dedb5b18e4ccfc70f0d446f6a21e8f0/xn_twist-1.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d3e1f2c106358974d75523af15c0180a", "sha256": "a496377f2ae8f54f48338410a04abf1178b3285df5881b472bbc576601bbf39b" }, "downloads": -1, "filename": "xn-twist-1.0.1.tar.gz", "has_sig": false, "md5_digest": "d3e1f2c106358974d75523af15c0180a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13184, "upload_time": "2017-09-09T01:22:00", "url": "https://files.pythonhosted.org/packages/ca/b9/dc3ec09f41c00395671e6a9bab50b8b35b5634c09717be6e9645268438a9/xn-twist-1.0.1.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "98786f28393cb7c6274201ccdac2f109", "sha256": "752988f6881d4cd038019ffeab6a537909f08c4cde69e7d68fe2ba0d069ca460" }, "downloads": -1, "filename": "xn_twist-1.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "98786f28393cb7c6274201ccdac2f109", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8132, "upload_time": "2017-12-12T01:36:27", "url": "https://files.pythonhosted.org/packages/41/61/3f00307b0558b0be240c7840ed332aa7e043ea4fade381ed4f4ffc9bc71e/xn_twist-1.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9294f029bef8d7308d67d2f4656df420", "sha256": "f931884d59dfecda19ffb9d3dd51c46a92f086b00cdf8893c7bc3295c1fa5a9b" }, "downloads": -1, "filename": "xn-twist-1.2.0.tar.gz", "has_sig": false, "md5_digest": "9294f029bef8d7308d67d2f4656df420", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13138, "upload_time": "2017-12-12T01:36:30", "url": "https://files.pythonhosted.org/packages/e1/e0/afeb58cf76d44e5cb4a8c10d50c2de20f2958d929baad975f1dfc22e9e96/xn-twist-1.2.0.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "0b6de1456193407fcd716fc07076626c", "sha256": "6362129c0dd584633928224572fc2f296e28aaee75a169f2f7c6f2f779001acc" }, "downloads": -1, "filename": "xn_twist-1.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0b6de1456193407fcd716fc07076626c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6339, "upload_time": "2018-04-06T09:38:03", "url": "https://files.pythonhosted.org/packages/09/10/72a399fb79198828901909c317d447e85b27155db9573aca5552cce2ad6e/xn_twist-1.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ea1b456e4034fb93cba6147747240782", "sha256": "dc23a331d841def500ce622b9ea38d3f06167e71101fa4bf9782cbe33496335a" }, "downloads": -1, "filename": "xn-twist-1.3.0.tar.gz", "has_sig": false, "md5_digest": "ea1b456e4034fb93cba6147747240782", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13570, "upload_time": "2018-04-06T09:38:04", "url": "https://files.pythonhosted.org/packages/e2/a6/aa73ea0f5b57b080748c1937f00bc28cf399270441ecc812bc678af1f81c/xn-twist-1.3.0.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "aa92f8481c0856e4cbebef27805591e5", "sha256": "08939da26217db80fc0af5edd9c56d2fb986ca7df07b2bbd647f724b7cbfa7c0" }, "downloads": -1, "filename": "xn_twist-1.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "aa92f8481c0856e4cbebef27805591e5", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6741, "upload_time": "2018-04-29T00:38:33", "url": "https://files.pythonhosted.org/packages/b9/37/e66c6c611893b9f261a6f7debccfdd5ef58aa0a3e024b8cacb2fb9cfe050/xn_twist-1.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f8e5c83c1b2da31920c25dc6e6df5ed7", "sha256": "1d6ca65400154fa309ae523c67835ed7bac314b3a1a4269ccad3a584e89c6f6a" }, "downloads": -1, "filename": "xn-twist-1.4.0.tar.gz", "has_sig": false, "md5_digest": "f8e5c83c1b2da31920c25dc6e6df5ed7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14613, "upload_time": "2018-04-29T00:38:34", "url": "https://files.pythonhosted.org/packages/1f/41/d3b71eb67b25568c4ded4ff019d5979ead90b487fd07f38fe1b61cac7cc2/xn-twist-1.4.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "aa92f8481c0856e4cbebef27805591e5", "sha256": "08939da26217db80fc0af5edd9c56d2fb986ca7df07b2bbd647f724b7cbfa7c0" }, "downloads": -1, "filename": "xn_twist-1.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "aa92f8481c0856e4cbebef27805591e5", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6741, "upload_time": "2018-04-29T00:38:33", "url": "https://files.pythonhosted.org/packages/b9/37/e66c6c611893b9f261a6f7debccfdd5ef58aa0a3e024b8cacb2fb9cfe050/xn_twist-1.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f8e5c83c1b2da31920c25dc6e6df5ed7", "sha256": "1d6ca65400154fa309ae523c67835ed7bac314b3a1a4269ccad3a584e89c6f6a" }, "downloads": -1, "filename": "xn-twist-1.4.0.tar.gz", "has_sig": false, "md5_digest": "f8e5c83c1b2da31920c25dc6e6df5ed7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14613, "upload_time": "2018-04-29T00:38:34", "url": "https://files.pythonhosted.org/packages/1f/41/d3b71eb67b25568c4ded4ff019d5979ead90b487fd07f38fe1b61cac7cc2/xn-twist-1.4.0.tar.gz" } ] }