{ "info": { "author": "Jesse Pollak", "author_email": "jpollak92@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python" ], "description": "urlmatch - fnmatch for the web\n==============================\n\nUse ``urlmatch`` to verify that URLs conform to certain patterns. The\nlibrary and match patterns are based heavily on the `Google Chrome\nExtension match\npatterns `__.\n\nUsage\n-----\n\n.. code:: python\n\n from urlmatch import urlmatch\n\n match_pattern = 'http://*.example.com/*'\n\n urlmatch(match_pattern, 'http://subdomain.example.com/') # True\n urlmatch(match_pattern, 'http://sub.subdomain.example.com/') # True\n\n urlmatch(match_pattern, 'https://example.com/') # False\n urlmatch(match_pattern, 'http://bad.com/') # False\n\nOptions\n-------\n\nThere are a few options that affect how the match patterns work.\n\n- ``path_required`` (default is True) - a ``bool`` which dictates\n whether the match pattern must have path\n- ``fuzzy_scheme`` (default is False) - a ``bool`` which dictates\n whether the scheme should be matched \"fuzzily.\" if this is true, then\n any valid scheme (``*``, ``http``, ``https``) will match both\n ``http`` and ``https``\n- ``http_auth_allowed`` (default is True) - ``bool`` which dictates\n whether URLs with HTTP Authentication in the URL should be allowed or\n not\n\nMatch pattern syntax\n--------------------\n\nThe basic match pattern syntax is simple:\n\n::\n\n := ://\n := '*' | 'http' | 'https'\n := '*' | '*.' +\n := '/' \n\nExamples\n~~~~~~~~\n\n- ``http://*/*`` - matches any URL that uses the http scheme\n- ``https://*/*`` - matches any URL that uses the https scheme\n- ``http://*/test*`` - matches any URL that uses the http scheme and\n has a path that starts with ``test``\n- ``*://test.com/*`` - matches any url with the domain ``test.com``\n- ``http://*.test.com`` - matches ``test.com`` and any subdomain of\n ``test.com``\n- ``http://test.com/foo/bar.html`` - matches the exact URL\n\nBugs\n----\n\nIf you find an issue, let me know in the issues section!\n\nContributing\n------------\n\nFrom the `Rubinius `__ contribution page:\n\n Writing code and participating should be fun, not an exercise in\n perseverance. Stringent commit polices, for whatever their other\n qualities may bring, also mean longer turnaround times.\n\nSubmit a patch and once it's accepted, you'll get commit access to the\nrepository. Feel free to fork the repository and send a pull request,\nonce it's merged in you'll get added. If not, feel free to bug\n`jessepollak `__ about it.\n\nHow To Contribute\n-----------------\n\n- Clone: ``git@github.com:jessepollak/urlmatch.git``\n- Create a topic branch: ``git checkout -b awesome_feature``\n- Commit away (and add unit tests for any code your write).\n- Keep up to date: ``git fetch && git rebase origin/master``.\n- Run the tests: ``python setup.py test``\n\nOnce you're ready:\n\n- Fork the project on GitHub\n- Add your repository as a remote:\n ``git remote add your_remote your_repo``\n- Push up your branch: ``git push your_remote awesome_feature``\n- Create a Pull Request for the topic branch, asking for review.\n\nOnce it's accepted:\n\n- If you want access to the core repository feel free to ask! Then you\n can change origin to point to the Read+Write URL:\n\n::\n\n git remote set-url origin git@github.com:jessepollak/urlmatch.git\n\nOtherwise, you can continue to hack away in your own fork.\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/jessepollak/urlmatch", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "urlmatch", "package_url": "https://pypi.org/project/urlmatch/", "platform": "", "project_url": "https://pypi.org/project/urlmatch/", "project_urls": { "Homepage": "https://github.com/jessepollak/urlmatch" }, "release_url": "https://pypi.org/project/urlmatch/1.0.1/", "requires_dist": null, "requires_python": "", "summary": "Python library for matching URLs.", "version": "1.0.1" }, "last_serial": 2921081, "releases": { "0.0.1": [ { "comment_text": "built for Darwin-13.0.0", "digests": { "md5": "874f529aa9d314da4fff9fcc4640d9fb", "sha256": "0cc0c092af01ad8d83b9a13e8c75d72636bbdf7a760d64c872465fa63fefeb4c" }, "downloads": -1, "filename": "urlmatch-0.0.1.macosx-10.9-intel.tar.gz", "has_sig": false, "md5_digest": "874f529aa9d314da4fff9fcc4640d9fb", "packagetype": "bdist_dumb", "python_version": "any", "requires_python": null, "size": 2298, "upload_time": "2014-02-22T08:42:50", "url": "https://files.pythonhosted.org/packages/49/1b/37e00b5b51862729ac20c31dec78a579e171d2d61ac9c7e0a9050a6c6d4a/urlmatch-0.0.1.macosx-10.9-intel.tar.gz" }, { "comment_text": "", "digests": { "md5": "2ea3a1bbda194f923d230d102895516a", "sha256": "1f3425fe813ecb618b131380e1ca6964ca3e397c137dba2777dbe701893c88f5" }, "downloads": -1, "filename": "urlmatch-0.0.1.tar.gz", "has_sig": false, "md5_digest": "2ea3a1bbda194f923d230d102895516a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2758, "upload_time": "2014-02-22T08:42:48", "url": "https://files.pythonhosted.org/packages/76/81/533b89cd46854f1e0e6d2084a67558defaa8917b1d93d5ec2eae0b8388ab/urlmatch-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "built for Darwin-13.1.0", "digests": { "md5": "3a65558687d660d779e2ef1348f1fa47", "sha256": "489b4d39e7ec397a3f5c70d32986f36396e0c8de3ca7db0c095ae3a823a04319" }, "downloads": -1, "filename": "urlmatch-0.0.2.macosx-10.9-intel.tar.gz", "has_sig": false, "md5_digest": "3a65558687d660d779e2ef1348f1fa47", "packagetype": "bdist_dumb", "python_version": "any", "requires_python": null, "size": 2336, "upload_time": "2014-03-21T17:15:01", "url": "https://files.pythonhosted.org/packages/9c/7c/e87ba7e043a6077e9c534de49b5dcae96d3c4c060634f308fb0321005715/urlmatch-0.0.2.macosx-10.9-intel.tar.gz" }, { "comment_text": "", "digests": { "md5": "21d57ca21f6ac542f3465e766bb3cf2b", "sha256": "ac7bbd8426aa256c7544753af1bc9ba1556a1706bd643d3fe592f0a47db59083" }, "downloads": -1, "filename": "urlmatch-0.0.2.tar.gz", "has_sig": false, "md5_digest": "21d57ca21f6ac542f3465e766bb3cf2b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2802, "upload_time": "2014-03-21T17:14:59", "url": "https://files.pythonhosted.org/packages/fb/15/4419e0e0c8b23a5191f793ce6a606b7b5966c67dbcf159fef36922c3d84b/urlmatch-0.0.2.tar.gz" } ], "0.0.4": [ { "comment_text": "built for Darwin-16.5.0", "digests": { "md5": "9c01df974d4f7ba24297f4ce28a07f25", "sha256": "a0a83f8eb8c905caa16693c503776537f011b2e0be7ae203b5fc4ba29b94fdf4" }, "downloads": -1, "filename": "urlmatch-0.0.4.macosx-10.12-x86_64.tar.gz", "has_sig": false, "md5_digest": "9c01df974d4f7ba24297f4ce28a07f25", "packagetype": "bdist_dumb", "python_version": "any", "requires_python": null, "size": 7892, "upload_time": "2017-06-02T17:34:24", "url": "https://files.pythonhosted.org/packages/60/96/48f3b78a118906a664523a09e27d0275193fab591ad822e6569c7e910f9d/urlmatch-0.0.4.macosx-10.12-x86_64.tar.gz" }, { "comment_text": "", "digests": { "md5": "48e03eaceacebe081653bda42e87f0ca", "sha256": "866aef723f56a2a81d8907718695b12f5e49a43bf22242d152264cce13d91771" }, "downloads": -1, "filename": "urlmatch-0.0.4.tar.gz", "has_sig": false, "md5_digest": "48e03eaceacebe081653bda42e87f0ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4997, "upload_time": "2017-06-02T17:34:18", "url": "https://files.pythonhosted.org/packages/07/0f/78f1b8820d4be675a09d9f6f284a652ec0759a7b8c0bcd3091f4f747d9b7/urlmatch-0.0.4.tar.gz" } ], "1.0.0": [ { "comment_text": "built for Darwin-15.5.0", "digests": { "md5": "9919df8139f2900ed0b2a7a7e8a64dd9", "sha256": "aec4baa947107dce22e516d49eb317127a06e629c00619149aa12e5dd0148eec" }, "downloads": -1, "filename": "urlmatch-1.0.0.macosx-10.11-intel.tar.gz", "has_sig": false, "md5_digest": "9919df8139f2900ed0b2a7a7e8a64dd9", "packagetype": "bdist_dumb", "python_version": "any", "requires_python": null, "size": 4376, "upload_time": "2016-08-24T18:08:35", "url": "https://files.pythonhosted.org/packages/d0/0d/156c91a19ca2a66e19fc949c5647564eaef606fb5c35bba3010be2b718ba/urlmatch-1.0.0.macosx-10.11-intel.tar.gz" }, { "comment_text": "", "digests": { "md5": "8723a0d98750585180009b8e43b07bf9", "sha256": "92505579f0b593de6029b7537b7145049b94ecf9068d2fb38ce78018ad49b213" }, "downloads": -1, "filename": "urlmatch-1.0.0.tar.gz", "has_sig": false, "md5_digest": "8723a0d98750585180009b8e43b07bf9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3718, "upload_time": "2016-08-24T18:08:33", "url": "https://files.pythonhosted.org/packages/b7/88/426afe6edae444fc89189ee3f6b6d5a25853846054a41c54e5b48ead4f10/urlmatch-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "built for Darwin-16.5.0", "digests": { "md5": "8aed6b154f835ef73012dd7ca5e48041", "sha256": "21c88712cfaccf22270d2dd9957fccf9afb9fc6340fb34d169f93f6305ee8938" }, "downloads": -1, "filename": "urlmatch-1.0.1.macosx-10.12-x86_64.tar.gz", "has_sig": false, "md5_digest": "8aed6b154f835ef73012dd7ca5e48041", "packagetype": "bdist_dumb", "python_version": "any", "requires_python": null, "size": 7897, "upload_time": "2017-06-02T17:36:28", "url": "https://files.pythonhosted.org/packages/7a/1a/56d2350573d36acd826c4a73300375e49b4d2f549bce406d314c19682f75/urlmatch-1.0.1.macosx-10.12-x86_64.tar.gz" }, { "comment_text": "", "digests": { "md5": "a7096f0de153721604ac9ba63e478ce5", "sha256": "3f0c3529f03f3b31efc4547ce44e6512ff5714bf61f7f6ac355b1636ad16eb2d" }, "downloads": -1, "filename": "urlmatch-1.0.1.tar.gz", "has_sig": false, "md5_digest": "a7096f0de153721604ac9ba63e478ce5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4995, "upload_time": "2017-06-02T17:36:25", "url": "https://files.pythonhosted.org/packages/84/4e/654a4b6b335b339da7208ca1e54a34d1180e94c09b11b63dd76ee731b378/urlmatch-1.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "built for Darwin-16.5.0", "digests": { "md5": "8aed6b154f835ef73012dd7ca5e48041", "sha256": "21c88712cfaccf22270d2dd9957fccf9afb9fc6340fb34d169f93f6305ee8938" }, "downloads": -1, "filename": "urlmatch-1.0.1.macosx-10.12-x86_64.tar.gz", "has_sig": false, "md5_digest": "8aed6b154f835ef73012dd7ca5e48041", "packagetype": "bdist_dumb", "python_version": "any", "requires_python": null, "size": 7897, "upload_time": "2017-06-02T17:36:28", "url": "https://files.pythonhosted.org/packages/7a/1a/56d2350573d36acd826c4a73300375e49b4d2f549bce406d314c19682f75/urlmatch-1.0.1.macosx-10.12-x86_64.tar.gz" }, { "comment_text": "", "digests": { "md5": "a7096f0de153721604ac9ba63e478ce5", "sha256": "3f0c3529f03f3b31efc4547ce44e6512ff5714bf61f7f6ac355b1636ad16eb2d" }, "downloads": -1, "filename": "urlmatch-1.0.1.tar.gz", "has_sig": false, "md5_digest": "a7096f0de153721604ac9ba63e478ce5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4995, "upload_time": "2017-06-02T17:36:25", "url": "https://files.pythonhosted.org/packages/84/4e/654a4b6b335b339da7208ca1e54a34d1180e94c09b11b63dd76ee731b378/urlmatch-1.0.1.tar.gz" } ] }