{ "info": { "author": "Tictail", "author_email": "tech+pip-claw@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "claw\n====\n\n.. image:: https://circleci.com/gh/tictail/claw.svg?style=svg\n :target: https://circleci.com/gh/tictail/claw\n\nClaw, https://github.com/tictail/claw, is a library to extract message quotations and signatures.\nIt is is a more light-weight version of the original https://github.com/mailgun/talon library.\n\n`Changelog `_\n\nIf you ever tried to parse message quotations or signatures you know that absence of any formatting standards in this area could make this task a nightmare.\nHopefully this library will make your life much easier.\n\nInstallation\n------------\n\n.. code::\n\n pip install claw\n\n\n\nUsage\n-----\n\nHere\u2019s how you initialize the library and extract a reply from a text\nmessage:\n\n\n.. code:: python\n\n import claw\n from claw import quotations\n \n claw.init()\n \n text = \"\"\"Reply\n \n -----Original Message-----\n \n Quote\"\"\"\n \n reply = quotations.extract_from(text, 'text/plain')\n reply = quotations.extract_from_plain(text)\n # reply == \"Reply\"\n\n\nTo extract a reply from html:\n\n.. code:: python\n\n html = \"\"\"Reply\n
\n \n
\n On 11-Apr-2011, at 6:54 PM, Bob <bob@example.com> wrote:\n
\n \n
\n Quote\n
\n \n
\"\"\"\n \n reply = quotations.extract_from(html, 'text/html')\n reply = quotations.extract_from_html(html)\n # reply == \"

Reply

\"\n\n\nOften the best way is the easiest one. Here\u2019s how you can extract\nsignature from email message without any\nmachine learning fancy stuff:\n\n.. code:: python\n\n from claw.signature import extract_signature\n \n \n message = \"\"\"Wow. Awesome!\n --\n Bob Smith\"\"\"\n \n text, signature = extract_signature(message)\n # text == \"Wow. Awesome!\"\n # signature == \"--\\nBob Smith\"\n\n\nQuick and works like a charm 90% of the time. For other 10% you can use\nthe power of machine learning algorithms. See the original talon implementation.\n\n\nDevelopment\n-----------\n\n.. code::\n\n virtualenv venv\n source venv/bin/activate\n \n make install\n \n make test\n\n\nRelease new version:\n\nBump the version in setup.py and update CHANGELOG.md, and then:\n\n.. code::\n\n make release", "description_content_type": null, "docs_url": null, "download_url": null, "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/tictail/claw", "keywords": null, "license": "APACHE2", "maintainer": null, "maintainer_email": null, "name": "claw", "package_url": "https://pypi.org/project/claw/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/claw/", "project_urls": { "Homepage": "https://github.com/tictail/claw" }, "release_url": "https://pypi.org/project/claw/1.3.0/", "requires_dist": null, "requires_python": null, "summary": "Library to extract message quotations and signatures.", "version": "1.3.0" }, "last_serial": 1725382, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "3cd9bfb4240ad1de7da39eb930497f49", "sha256": "1ac6f7ecb92635721b7df8b662225c27994f15a3adbb7f715e331b83ba074c4e" }, "downloads": -1, "filename": "claw-1.0.0.tar.gz", "has_sig": false, "md5_digest": "3cd9bfb4240ad1de7da39eb930497f49", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24604, "upload_time": "2015-08-22T17:18:28", "url": "https://files.pythonhosted.org/packages/6a/d8/bd4280e448e0b7bcecbdd8b957361c4b23aef38663fef317f33aa69ab3f6/claw-1.0.0.tar.gz" } ], "1.0.0rc1": [ { "comment_text": "", "digests": { "md5": "71a863a76fe7dbac66883364e99914d7", "sha256": "8072038c2f2ebcff7a74fab7034d462260c5a7e3e3caa5fb4833129716314207" }, "downloads": -1, "filename": "claw-1.0.0rc1.tar.gz", "has_sig": false, "md5_digest": "71a863a76fe7dbac66883364e99914d7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24140, "upload_time": "2015-08-21T11:02:23", "url": "https://files.pythonhosted.org/packages/27/6f/c590297b93a4570fb4427cc3caf77e70dd871ee010bbc9638d4a382fc5fd/claw-1.0.0rc1.tar.gz" } ], "1.0.0rc2": [ { "comment_text": "", "digests": { "md5": "838a5f3d07102b41bc55e4e3f0f5b7a3", "sha256": "f028a8269605b0efaa40d3670349594785c93af47ba0843b1ece9462b6cf690a" }, "downloads": -1, "filename": "claw-1.0.0rc2.tar.gz", "has_sig": false, "md5_digest": "838a5f3d07102b41bc55e4e3f0f5b7a3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24340, "upload_time": "2015-08-21T11:04:14", "url": "https://files.pythonhosted.org/packages/d4/d9/dec5cb0033da264a3cb3e49d1d41d8a3eec33f4fce7908026f337e7d3575/claw-1.0.0rc2.tar.gz" } ], "1.0.0rc3": [ { "comment_text": "", "digests": { "md5": "1ef0458f75cb3bc8cbdfaeb7082ddda2", "sha256": "b2c509279c5704168fc135d6d1d7b27fc42c328dbb545c7d76b347e49f4818f5" }, "downloads": -1, "filename": "claw-1.0.0rc3.tar.gz", "has_sig": false, "md5_digest": "1ef0458f75cb3bc8cbdfaeb7082ddda2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24310, "upload_time": "2015-08-21T11:09:57", "url": "https://files.pythonhosted.org/packages/0b/18/255f15b9fcd724a075bf5e9214b7084523835c2569f9e85946f359745a9a/claw-1.0.0rc3.tar.gz" } ], "1.0.0rc4": [ { "comment_text": "", "digests": { "md5": "ccbc9ac8a73f842e7b4d7b1133a78d7d", "sha256": "50cf625c86b9dffd0e0d81eb59196a12c385c305e91ceb8d2f594af9e4377399" }, "downloads": -1, "filename": "claw-1.0.0rc4.tar.gz", "has_sig": false, "md5_digest": "ccbc9ac8a73f842e7b4d7b1133a78d7d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24435, "upload_time": "2015-08-21T12:46:21", "url": "https://files.pythonhosted.org/packages/f0/44/8aab69741781ed8859eab6ef9d16df0e515531d4bb4be262157df956c9a8/claw-1.0.0rc4.tar.gz" } ], "1.0.0rc5": [ { "comment_text": "", "digests": { "md5": "eb52b6d67e44d539e5d62d5e8ace679c", "sha256": "9121d98735432de9de6a6ec3a1f3c0252b2b664cbe96173c47477211b144cbeb" }, "downloads": -1, "filename": "claw-1.0.0rc5.tar.gz", "has_sig": false, "md5_digest": "eb52b6d67e44d539e5d62d5e8ace679c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24528, "upload_time": "2015-08-22T15:44:30", "url": "https://files.pythonhosted.org/packages/0e/e6/4af2712fd4a1236e1217e9cf9cf3ae93d1ef115707e4bb7fa3231ec4d291/claw-1.0.0rc5.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "3629428b85267c9d0343223505c2cdfb", "sha256": "e7ef0a74ac201563029219fc88fd9b0717040df5af16e26764f1685743fc89ac" }, "downloads": -1, "filename": "claw-1.0.1.tar.gz", "has_sig": false, "md5_digest": "3629428b85267c9d0343223505c2cdfb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24713, "upload_time": "2015-08-23T08:34:16", "url": "https://files.pythonhosted.org/packages/09/b0/4cad6fcc91ec4ef68a212cb72f3616a6f79b2de2a8ccaa09f7a80e2cd108/claw-1.0.1.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "f378b686cdbfbd22087cd5109df11636", "sha256": "0bbd65dbbbb31259e20ea894f52aeda1b15cc72ff5519cc874d82ab4a9ee9b9c" }, "downloads": -1, "filename": "claw-1.1.0.tar.gz", "has_sig": false, "md5_digest": "f378b686cdbfbd22087cd5109df11636", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24777, "upload_time": "2015-08-25T06:51:25", "url": "https://files.pythonhosted.org/packages/3c/94/8053f0d6d0397a229dc7e7e74480358646f9f9e02f6c26058620327ac3a0/claw-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "d9dae61fe0a006263d2c57bdc2fd9f63", "sha256": "a0dd21f8c6dc879f8e9c525e1ac33a0954403bfab13de97adcb9cadc6aedf3a6" }, "downloads": -1, "filename": "claw-1.2.0.tar.gz", "has_sig": false, "md5_digest": "d9dae61fe0a006263d2c57bdc2fd9f63", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24794, "upload_time": "2015-08-25T15:35:41", "url": "https://files.pythonhosted.org/packages/7c/44/14664a5e58919c5eac7a22d7d651c9ccfc16b4ea1b387cc6f87e39ec5f80/claw-1.2.0.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "a6836a0a7191b707c23ba0ab51a27ec6", "sha256": "f50322d5ce25e40374e84d3e694523dbc3241c47960da2159d2bde6aad3f699d" }, "downloads": -1, "filename": "claw-1.3.0.tar.gz", "has_sig": false, "md5_digest": "a6836a0a7191b707c23ba0ab51a27ec6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24896, "upload_time": "2015-09-16T16:17:24", "url": "https://files.pythonhosted.org/packages/c9/c6/e5c09ebd4ca2e8b410b54a2ce62099b7c6b898b16b54d26347d22020393a/claw-1.3.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a6836a0a7191b707c23ba0ab51a27ec6", "sha256": "f50322d5ce25e40374e84d3e694523dbc3241c47960da2159d2bde6aad3f699d" }, "downloads": -1, "filename": "claw-1.3.0.tar.gz", "has_sig": false, "md5_digest": "a6836a0a7191b707c23ba0ab51a27ec6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24896, "upload_time": "2015-09-16T16:17:24", "url": "https://files.pythonhosted.org/packages/c9/c6/e5c09ebd4ca2e8b410b54a2ce62099b7c6b898b16b54d26347d22020393a/claw-1.3.0.tar.gz" } ] }