{ "info": { "author": "Pavlo Kapyshin", "author_email": "i@93z.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy" ], "description": "paka.sitemaps\n=============\n.. image:: https://travis-ci.org/PavloKapyshin/paka.sitemaps.svg?branch=master\n :target: https://travis-ci.org/PavloKapyshin/paka.sitemaps\n\n``paka.sitemaps`` is a Python library that helps generate XML files according\nto `sitemaps.org protocol `_.\n\n\nFeatures\n--------\n- Python 2.7 and 3.5 are supported\n- PyPy (Python 2.7) is supported\n- does not depend on any web framework\n- automatically splits all added URLs into sitemaps and sitemap indexes\n- lazily writes to file system\n\n\nExamples\n--------\n.. code-block:: pycon\n\n >>> from paka import sitemaps\n\nCreate directory for resulting XML files (here it is a temporary directory):\n\n.. code-block:: pycon\n\n >>> import tempfile\n >>> fs_root = tempfile.mkdtemp()\n\nCreate sitemap building context, add few URLs to it, and close the context:\n\n.. code-block:: pycon\n\n >>> ctx = sitemaps.Context(\n ... fs_root=fs_root, base_url=u\"http://example.org\")\n >>> ctx.add(u\"/some/path-here/\", priority=0.1)\n >>> ctx.add(u\"/other\")\n >>> ctx.close()\n\nNow `fs_root` contains one sitemap and one sitemap index:\n\n.. code-block:: pycon\n\n >>> import os\n >>> sorted(os.listdir(fs_root))\n ['i1.xml', 's1-1.xml']\n\nResults can be checked with XML parser (here ``lxml`` is used):\n\n.. code-block:: pycon\n\n >>> from lxml import etree\n >>> doc = etree.parse(os.path.join(fs_root, \"s1-1.xml\"))\n >>> ns = {\"s\": sitemaps.XMLNS}\n >>> url_els = doc.xpath(\"//s:url\", namespaces=ns)\n >>> sorted([el.findtext(\"s:loc\", namespaces=ns) for el in url_els])\n ['http://example.org/other', 'http://example.org/some/path-here/']\n\nRemove directory and files created for demonstration:\n\n.. code-block:: pycon\n\n >>> import shutil\n >>> shutil.rmtree(fs_root)\n\n\nInstallation\n------------\nLibrary is `available on PyPI `_,\nyou can use ``pip`` for installation:\n\n.. code-block:: console\n\n $ pip install paka.sitemaps\n\n\nGetting documentation\n---------------------\nBuild HTML docs:\n\n.. code-block:: console\n\n $ tox -e docs\n\nView built docs:\n\n.. code-block:: console\n\n $ sensible-browser .tox/docs/tmp/docs_html/index.html\n\n\nRunning tests\n-------------\n.. code-block:: console\n\n $ tox\n\n\nGetting coverage\n----------------\nCollect info:\n\n.. code-block:: console\n\n $ tox -e coverage\n\nView HTML report:\n\n.. code-block:: console\n\n $ sensible-browser .tox/coverage/tmp/cov_html/index.html\n\n\nChecking code style\n-------------------\nRun code checkers:\n\n.. code-block:: console\n\n $ tox -e checks\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/PavloKapyshin/paka.sitemaps", "keywords": "sitemap robots", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "paka.sitemaps", "package_url": "https://pypi.org/project/paka.sitemaps/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/paka.sitemaps/", "project_urls": { "Homepage": "https://github.com/PavloKapyshin/paka.sitemaps" }, "release_url": "https://pypi.org/project/paka.sitemaps/1.6.1/", "requires_dist": null, "requires_python": "", "summary": "", "version": "1.6.1" }, "last_serial": 2881089, "releases": { "1.2.3": [ { "comment_text": "", "digests": { "md5": "40509751bc1bf83d172642e40d832cf0", "sha256": "0bb27b7f844b2edb606d7d3f077d4d49ab4dd3d725f5970ffa77ab5f4cbd9e2f" }, "downloads": -1, "filename": "paka.sitemaps-1.2.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "40509751bc1bf83d172642e40d832cf0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4731, "upload_time": "2017-01-11T21:42:13", "url": "https://files.pythonhosted.org/packages/09/89/1a58b921997ac1035204f23e94640d55a42fec4c468722f043527260b22c/paka.sitemaps-1.2.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5e749365334b712b3962ae394756d55f", "sha256": "e73bf6c441105e90d8261b5b636ce5f3baaa63c14bb1d76791376b0dc838e07e" }, "downloads": -1, "filename": "paka.sitemaps-1.2.3.tar.gz", "has_sig": false, "md5_digest": "5e749365334b712b3962ae394756d55f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3772, "upload_time": "2017-01-11T21:42:15", "url": "https://files.pythonhosted.org/packages/a9/7e/d8f55267b3102bacdaa11d1df20975a9afefd3b67cb6917383a372860046/paka.sitemaps-1.2.3.tar.gz" } ], "1.2.4": [ { "comment_text": "", "digests": { "md5": "2932e309a74703a0d0b2c98aaf383d7f", "sha256": "eadebc7e37a6bb8900e17dec5cf68256986899da32d6291f5fa24eb1d6bba61e" }, "downloads": -1, "filename": "paka.sitemaps-1.2.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2932e309a74703a0d0b2c98aaf383d7f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4731, "upload_time": "2017-01-13T17:29:24", "url": "https://files.pythonhosted.org/packages/93/38/3c89499aff18b08e22a3994725a042b45086ade16cfcbd6b2e17f0d13760/paka.sitemaps-1.2.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b9e7fac9737bcf7be98ce442cface86d", "sha256": "fc0754b166884d861f88e107e5ee1b686b055e90f19dd42b4d8739971f31ce73" }, "downloads": -1, "filename": "paka.sitemaps-1.2.4.tar.gz", "has_sig": false, "md5_digest": "b9e7fac9737bcf7be98ce442cface86d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3762, "upload_time": "2017-01-13T17:29:27", "url": "https://files.pythonhosted.org/packages/00/1c/f69fcf8b3677606c43f59b4d60b9bd4f4484a3ec69b5816784957bea7233/paka.sitemaps-1.2.4.tar.gz" } ], "1.2.5": [ { "comment_text": "", "digests": { "md5": "4db11b3fb95e2cb4b7dd4b2ca3f0d390", "sha256": "b3de4d32ccf2c40bab54e0d8a231514598d3fcf2a09731d36dcdbd8539ae2c6f" }, "downloads": -1, "filename": "paka.sitemaps-1.2.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4db11b3fb95e2cb4b7dd4b2ca3f0d390", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5322, "upload_time": "2017-02-04T21:07:20", "url": "https://files.pythonhosted.org/packages/0e/6a/4cde799804a0c6f934ec18a61fdc75d703351ef5748156ef2bda17c6534e/paka.sitemaps-1.2.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "db245952c92dafd9554e551219056ff3", "sha256": "dcf46ed517b1d9e3616b18121dca30a63f46ae43ae7971b9aa1829408f8fc08c" }, "downloads": -1, "filename": "paka.sitemaps-1.2.5.tar.gz", "has_sig": false, "md5_digest": "db245952c92dafd9554e551219056ff3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4551, "upload_time": "2017-02-04T21:07:22", "url": "https://files.pythonhosted.org/packages/a9/50/b70ba6b3603c0d6647cd83155ec0f3b77cc7d45e4a5e09f429d1018b3dc7/paka.sitemaps-1.2.5.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "66b15bfd264d9bce247f522c55e8a849", "sha256": "05e3bfbccbe042529edb90198a66fb7b87ab1bf10d7dbecd23fea4a54033890f" }, "downloads": -1, "filename": "paka.sitemaps-1.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "66b15bfd264d9bce247f522c55e8a849", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5376, "upload_time": "2017-02-06T14:21:58", "url": "https://files.pythonhosted.org/packages/57/ce/aa8c144b51eb531527cf9f32ea72f5cfa44a5c1a05549d97f7029e2989df/paka.sitemaps-1.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "acafd04cafae2d779627e73c026f0b24", "sha256": "e1a546e0fa3f796c78b6a7aac294bd8840d3840b31ae2e5a68e53349e25185fd" }, "downloads": -1, "filename": "paka.sitemaps-1.3.0.tar.gz", "has_sig": false, "md5_digest": "acafd04cafae2d779627e73c026f0b24", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4378, "upload_time": "2017-02-06T14:22:00", "url": "https://files.pythonhosted.org/packages/43/6a/3ecb907eecc030325edec8235fc2ea34a301d901a4d06f5d73d97efe54f3/paka.sitemaps-1.3.0.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "7e502183e7e536419a28efbce83c6912", "sha256": "c7f0eefb1870e47bf01f01f909bc1e8d8988f67ecfb0e56198a75115c8209885" }, "downloads": -1, "filename": "paka.sitemaps-1.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7e502183e7e536419a28efbce83c6912", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5390, "upload_time": "2017-02-07T14:33:03", "url": "https://files.pythonhosted.org/packages/96/8e/387adecc5d62bf143b0f9985aceb3b3ed5c20f9baf1523674afe49f52dd0/paka.sitemaps-1.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d111b18bd711387cd4827cc9e2dfb7c0", "sha256": "9b58885250699dee40629c609bc68b068d4c539dcaf39958104e1f2491c36148" }, "downloads": -1, "filename": "paka.sitemaps-1.4.0.tar.gz", "has_sig": false, "md5_digest": "d111b18bd711387cd4827cc9e2dfb7c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5270, "upload_time": "2017-02-07T14:33:06", "url": "https://files.pythonhosted.org/packages/24/a3/cd2f22465a1f6fecfcc6610ae7e59f18d4d71adc64f3e8774fa7e9cc280a/paka.sitemaps-1.4.0.tar.gz" } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "b5e5c4c1a3c0fa9e9c6d1c2f0ba15d80", "sha256": "d4c199905f1b2d70ab0d7893d357ce8c200041437f303678af3a052b14ddeada" }, "downloads": -1, "filename": "paka.sitemaps-1.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b5e5c4c1a3c0fa9e9c6d1c2f0ba15d80", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5454, "upload_time": "2017-02-09T15:37:56", "url": "https://files.pythonhosted.org/packages/1b/4a/e3a9be1d7bbf78f94d43ef17a9b27b17c8be979b48d57b6d5672cb80faa4/paka.sitemaps-1.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "80bcd7eb835601752986f64ce1697636", "sha256": "09560327a2d4991b303399fd284bf2ffd97a9c7330c3314808d499dbae509232" }, "downloads": -1, "filename": "paka.sitemaps-1.5.0.tar.gz", "has_sig": false, "md5_digest": "80bcd7eb835601752986f64ce1697636", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5335, "upload_time": "2017-02-09T15:37:59", "url": "https://files.pythonhosted.org/packages/b1/39/d833bee68ddb143805070f854016457bbe39eaa7778c9f5710e1ac599f97/paka.sitemaps-1.5.0.tar.gz" } ], "1.6.0": [ { "comment_text": "", "digests": { "md5": "6523d277c49f3d3bae669f6422848791", "sha256": "91cf01cb86da11a6d4b3121ad031db85428b0d1e7d76baefe55037f57baf0991" }, "downloads": -1, "filename": "paka.sitemaps-1.6.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6523d277c49f3d3bae669f6422848791", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5454, "upload_time": "2017-05-14T13:21:10", "url": "https://files.pythonhosted.org/packages/b7/08/efc5681ef3c77742e1d2f56d31e85ab1d7b2f5e329d36fb57abae4211dc9/paka.sitemaps-1.6.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "71f027d7b3d1c5549e36f9d88035a0b2", "sha256": "1500d3abb24c89c9d5e502ed1d678abbb00d9368dfe8b8ea224ad9c94787b04a" }, "downloads": -1, "filename": "paka.sitemaps-1.6.0.tar.gz", "has_sig": false, "md5_digest": "71f027d7b3d1c5549e36f9d88035a0b2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5292, "upload_time": "2017-05-14T13:21:13", "url": "https://files.pythonhosted.org/packages/0a/c0/ae8bd261b40590d2fe3d536ac6a1716cc0c2204c2a96b365195c6e62e2b5/paka.sitemaps-1.6.0.tar.gz" } ], "1.6.1": [ { "comment_text": "", "digests": { "md5": "68dfdab669e7e9b0fe38f5ace4eb97dc", "sha256": "a30b03a669c09677f09760d441a3dee5939e9189523feb700f9d166e676816c6" }, "downloads": -1, "filename": "paka.sitemaps-1.6.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "68dfdab669e7e9b0fe38f5ace4eb97dc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5457, "upload_time": "2017-05-17T17:17:45", "url": "https://files.pythonhosted.org/packages/38/b7/a2bbbc1d020521ce425728438bfa6581d96cd2b60e1e701aa20770baed01/paka.sitemaps-1.6.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a4481d896a586e0761f2ebf71b6fb28b", "sha256": "ad6001d1d9ae01a234dacf24de7d6df2b018574e7133fc7817cf1ce0c1c37fcc" }, "downloads": -1, "filename": "paka.sitemaps-1.6.1.tar.gz", "has_sig": false, "md5_digest": "a4481d896a586e0761f2ebf71b6fb28b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5266, "upload_time": "2017-05-17T17:17:47", "url": "https://files.pythonhosted.org/packages/df/bc/40caa33ceb17ccbcbb763864b628b8094d792bd7c32cba354440efaade95/paka.sitemaps-1.6.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "68dfdab669e7e9b0fe38f5ace4eb97dc", "sha256": "a30b03a669c09677f09760d441a3dee5939e9189523feb700f9d166e676816c6" }, "downloads": -1, "filename": "paka.sitemaps-1.6.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "68dfdab669e7e9b0fe38f5ace4eb97dc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5457, "upload_time": "2017-05-17T17:17:45", "url": "https://files.pythonhosted.org/packages/38/b7/a2bbbc1d020521ce425728438bfa6581d96cd2b60e1e701aa20770baed01/paka.sitemaps-1.6.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a4481d896a586e0761f2ebf71b6fb28b", "sha256": "ad6001d1d9ae01a234dacf24de7d6df2b018574e7133fc7817cf1ce0c1c37fcc" }, "downloads": -1, "filename": "paka.sitemaps-1.6.1.tar.gz", "has_sig": false, "md5_digest": "a4481d896a586e0761f2ebf71b6fb28b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5266, "upload_time": "2017-05-17T17:17:47", "url": "https://files.pythonhosted.org/packages/df/bc/40caa33ceb17ccbcbb763864b628b8094d792bd7c32cba354440efaade95/paka.sitemaps-1.6.1.tar.gz" } ] }