{ "info": { "author": "Brandon Dixon", "author_email": "brandon@9bplus.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python", "Topic :: Software Development :: Libraries" ], "description": "Frisbee\n=======\n.. image:: https://readthedocs.org/projects/frisbee/badge/?version=latest\n :target: http://frisbee.readthedocs.io/en/latest/?badge=latest\n\n.. image:: https://badge.fury.io/py/frisbee.svg\n :target: https://badge.fury.io/py/frisbee\n\n.. image:: https://img.shields.io/badge/License-MIT-yellow.svg\n :target: https://opensource.org/licenses/MIT\n\n\nFrisbee is a small utility to collect email addresses from search engines and\nother free-form text sources. Frisbee makes it simple to find email addresses\nposted on the web by taking user-fed input and translating it into an\nautomated search query. Users can extend frisbee by adding modules for new\nsearch engines or other obscure data sources.\n\nQuick Start\n-----------\n**Install the library**:\n\n``pip install frisbee`` or ``python setup.py install``\n\n**Run a search**\n\n``frisbee search -e bing -d bnpparibas.com -l 50 --greedy --save``\n\n**Search in bulk**\n\n``frisbee search -e bing -f domains -l 50 --save``\n\n\nSample Code\n-----------\n\nThis sample code shows some of the range of functionality within the module::\n\n from frisbee import Frisbee\n\n # Create an instance\n frisbee = Frisbee(save=True)\n\n # Describe your job\n jobs = [{'engine': 'bing', 'modifier': 'site:github.com',\n 'domain': 'foo.bar', 'limit': 50}]\n\n # Execute the jobs\n frisbee.search(jobs)\n\n # Get the results\n results = frisbee.get_results()\n\nExample Output\n--------------\n\nBelow is an example job result::\n\n [{\n \"engine\": \"bing\",\n \"modifier\": \"site:github.com\",\n \"domain\": \"blockade.io\",\n \"limit\": 50,\n \"results\": {\n \"start_time\": \"2018-12-13 16:54:15\",\n \"end_time\": \"2018-12-13 16:54:19\",\n \"emails\": [\n \"info@blockade.io\"\n ],\n \"duration\": \"4\",\n \"processed\": 44\n },\n \"project\": \"zealous_kirch\"\n }]\n\nFeatures\n--------\n* Ability to search for email addresses from search engine results\n* Modular design that can be extended easily to include new sources\n* Modifier options that can filter or target search query\n* Limit option to reduce the number of results parsed\n* Greedy option to learn from collected results and fuzzy to find related\n* Save output describing job request and results\n* Individual or bulk look-ups using the command line utility\n\nChangelog\n---------\n05-30-19\n~~~~~~~~\n* Feature: Added a bulk option to the command line tool to ease usage\n* Change: Replaced multiprocessing with concurrent.futures to simplify logic\n* Change: Split logic of dynamic module loading and future work outside of the Frisbee class\n* Change: Reverted back to the BS4 parsing versus raw text\n* Change: Replaced the regular expression processing to be more efficient\n* Change: Progressively save results as they come in to avoid any losses from a deadlock\n* Change: Randomize the top-level directory to avoid conflicts\n\n05-24-19\n~~~~~~~~\n* Feature: Clean SERPs to remove files or other formats we can't inspect\n* Change: Use text extraction instead of BS4 HTML parsing to get body of websites (ensures clean email extraction)\n* Change: Increased logging and timeout parameters\n\n12-20-18\n~~~~~~~~\n* Feature: Added typing to the core code\n* Feature: Added a fuzzy flag to find related domains\n\n12-14-18\n~~~~~~~~\n* Feature: Activated greedy option to save and output to screen\n* Bugfix: Wrapped loading of HTML for cases where data is dirty\n\n12-13-18\n~~~~~~~~\n* Initial push!\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "https://github.com/9b/frisbee/archive/master.zip", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/9b/frisbee", "keywords": "emails,leads,search engine,crawler,intel", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "frisbee", "package_url": "https://pypi.org/project/frisbee/", "platform": "", "project_url": "https://pypi.org/project/frisbee/", "project_urls": { "Download": "https://github.com/9b/frisbee/archive/master.zip", "Homepage": "https://github.com/9b/frisbee" }, "release_url": "https://pypi.org/project/frisbee/0.0.7/", "requires_dist": [ "beautifulsoup4", "requests", "requests-futures", "namesgenerator" ], "requires_python": "", "summary": "Search tool to find email addresses by abusing search", "version": "0.0.7" }, "last_serial": 5337644, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "e7fd494d0707342faf47c31125161f5e", "sha256": "905384933ea9367a7a62ce670fe79b834ae87a57eb73e5232b4a785dc8581218" }, "downloads": -1, "filename": "frisbee-0.0.1-py3.6.egg", "has_sig": false, "md5_digest": "e7fd494d0707342faf47c31125161f5e", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": null, "size": 19276, "upload_time": "2018-12-13T22:38:32", "url": "https://files.pythonhosted.org/packages/ab/f4/a30785a6a2ab7ed76809c364683c07b3cf869f44faed07a18891d79cd504/frisbee-0.0.1-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "a31a9f397cffc35edc5905674d361503", "sha256": "d0ba23f786ead9ab1e9341885d768313642f321d784899e019e30a2b388f4b78" }, "downloads": -1, "filename": "frisbee-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "a31a9f397cffc35edc5905674d361503", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10173, "upload_time": "2018-12-13T22:38:30", "url": "https://files.pythonhosted.org/packages/e1/f3/8df8a9c372a6bdb9e3daf7d6dd40c9b387866c32716ccac40adb0f1807ad/frisbee-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8c13d8e0d88a45f227d6687b240bef1d", "sha256": "b5397d0984c3f99005406ab9e344a8c5f151742bb1db8da11711cc78fd2ecb1a" }, "downloads": -1, "filename": "frisbee-0.0.1.tar.gz", "has_sig": false, "md5_digest": "8c13d8e0d88a45f227d6687b240bef1d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8066, "upload_time": "2018-12-13T22:38:33", "url": "https://files.pythonhosted.org/packages/5e/f8/98873f6030f58b73260e0425fc798c55fbf6d3d1d7b7001bf8d0ada0abfc/frisbee-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "2a312305835a7ef659a4fb6b4b6e67a2", "sha256": "89f3e8de1e9d7effb3934071b7ea327713ef5b5410ea089d048110d97c3c5d1f" }, "downloads": -1, "filename": "frisbee-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "2a312305835a7ef659a4fb6b4b6e67a2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10367, "upload_time": "2018-12-14T15:26:02", "url": "https://files.pythonhosted.org/packages/be/27/259ca65d06162647782a108dfdabcecfa003067b5b6ed27f74699968bd84/frisbee-0.0.2-py3-none-any.whl" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "4069c6fe9fa89a652dc10a7e7a973a65", "sha256": "94bdaafe4bb76e69c960044331dae7ee392b303d3fa7e5ac7eb1ac22c459e6fa" }, "downloads": -1, "filename": "frisbee-0.0.3-py3.6.egg", "has_sig": false, "md5_digest": "4069c6fe9fa89a652dc10a7e7a973a65", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": null, "size": 20352, "upload_time": "2018-12-20T17:34:56", "url": "https://files.pythonhosted.org/packages/38/d6/e52efff30b5c574deb7279664cbc2a265fe7c8f48bd7d0548bf16b21e2bd/frisbee-0.0.3-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "e1c30e847f9c72f6268d3cfc6354b4e3", "sha256": "832e711ba2fed950718ee1b552007d963e93d3434262080ce6ea20e00aed9992" }, "downloads": -1, "filename": "frisbee-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "e1c30e847f9c72f6268d3cfc6354b4e3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10289, "upload_time": "2018-12-14T15:30:30", "url": "https://files.pythonhosted.org/packages/b4/b8/b7b61b4ed76ef372edc518ff9482c0f3ec0f634640a982ad9743cc672ffe/frisbee-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f78b48239d96a766f7de1871841d9277", "sha256": "1cdee818b42d69314749ffdceeb9f0b5aaf3c26c5a92b42d820c46265806e9bd" }, "downloads": -1, "filename": "frisbee-0.0.3.tar.gz", "has_sig": false, "md5_digest": "f78b48239d96a766f7de1871841d9277", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8350, "upload_time": "2018-12-14T15:30:32", "url": "https://files.pythonhosted.org/packages/88/f6/dd4bb2390fb2bcd0c6c3d21d7694cf3743d12b889d69002001a4e7f84b57/frisbee-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "399e00e987c6a59f725fc9cef83247d7", "sha256": "cef8c90ba039b572c9040953581733c2dc6979558eb51a079e385b3fa0d593fc" }, "downloads": -1, "filename": "frisbee-0.0.4-py3.6.egg", "has_sig": false, "md5_digest": "399e00e987c6a59f725fc9cef83247d7", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": null, "size": 20672, "upload_time": "2018-12-20T17:34:58", "url": "https://files.pythonhosted.org/packages/49/80/9bd3afea192f1e0dea475a47ac4e9997bcb3479ce68806e458ea4c79b6a7/frisbee-0.0.4-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "c676c60216b19628a5b9823ed73ff606", "sha256": "396514a26f165bd37194ee06c02bae0eb4ef486afa8b7fa75aa7afc4f8d631b2" }, "downloads": -1, "filename": "frisbee-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "c676c60216b19628a5b9823ed73ff606", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10756, "upload_time": "2018-12-20T17:34:55", "url": "https://files.pythonhosted.org/packages/19/b2/1fec179d3d5c3e04f956afb8d53bb58dc58afc2b751c476d6bf8c0972a2d/frisbee-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "babeea15272a7ddcb19b85e9209d6903", "sha256": "c3fab1fd7dde7ece839ef8f02fe55bfe07f2a9ec81cd0fbf75827dda0a987f9e" }, "downloads": -1, "filename": "frisbee-0.0.4.tar.gz", "has_sig": false, "md5_digest": "babeea15272a7ddcb19b85e9209d6903", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8793, "upload_time": "2018-12-20T17:34:59", "url": "https://files.pythonhosted.org/packages/a5/87/9b9fc9279ce92254cfb0c9c6c9283a998d6433d6e041bf38780e6b5db57d/frisbee-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "428b2463a264c9824d1660067bf9022a", "sha256": "3560dfdbb5326686ce917db5ecdf33390d5ea181a41af50713331daa3a7df778" }, "downloads": -1, "filename": "frisbee-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "428b2463a264c9824d1660067bf9022a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11295, "upload_time": "2019-05-24T15:55:49", "url": "https://files.pythonhosted.org/packages/53/22/5ac76997516d977964e8d1df209221be236ed7fa1fc7cf6a13d6d1116fb7/frisbee-0.0.5-py3-none-any.whl" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "459f895c1668516856f181c1d5ab8e6a", "sha256": "2ef9c72fd038c57d241fef98702f5bcd2d1966bd075c3c27c04b5f1ddc11b9dd" }, "downloads": -1, "filename": "frisbee-0.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "459f895c1668516856f181c1d5ab8e6a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12041, "upload_time": "2019-05-30T14:23:03", "url": "https://files.pythonhosted.org/packages/e7/47/806bfb42e4861e61d3aedf12cc6844aff2ac6731eb7f49fb0f2af3584b8a/frisbee-0.0.6-py3-none-any.whl" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "658667983247567663264f2f60e24b19", "sha256": "f60d30b64389f66b7a7e6a9e91427b8dd44611770f947b2435a1b372a63712ef" }, "downloads": -1, "filename": "frisbee-0.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "658667983247567663264f2f60e24b19", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12046, "upload_time": "2019-05-30T14:40:41", "url": "https://files.pythonhosted.org/packages/6d/d3/4775597c0a726c833c96b0f69a2decc0d27ff086418a215b25baef9314eb/frisbee-0.0.7-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "658667983247567663264f2f60e24b19", "sha256": "f60d30b64389f66b7a7e6a9e91427b8dd44611770f947b2435a1b372a63712ef" }, "downloads": -1, "filename": "frisbee-0.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "658667983247567663264f2f60e24b19", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12046, "upload_time": "2019-05-30T14:40:41", "url": "https://files.pythonhosted.org/packages/6d/d3/4775597c0a726c833c96b0f69a2decc0d27ff086418a215b25baef9314eb/frisbee-0.0.7-py3-none-any.whl" } ] }