{ "info": { "author": "Diederik van der Boor & Django CMS developers", "author_email": "opensource@edoburu.nl", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 1.4", "Framework :: Django :: 1.5", "Framework :: Django :: 1.6", "Framework :: Django :: 1.7", "Framework :: Django :: 1.8", "Framework :: Django :: 1.9", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Topic :: Software Development", "Topic :: Software Development :: Libraries :: Application Frameworks", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "django-template-analyzer\n========================\n\n.. image:: https://travis-ci.org/edoburu/django-template-analyzer.svg?branch=master\n :target: http://travis-ci.org/edoburu/django-template-analyzer\n.. image:: https://img.shields.io/pypi/v/django-template-analyzer.svg\n :target: https://pypi.python.org/pypi/django-template-analyzer/\n.. image:: https://img.shields.io/pypi/dm/django-template-analyzer.svg\n :target: https://pypi.python.org/pypi/django-template-analyzer/\n.. image:: https://img.shields.io/badge/wheel-yes-green.svg\n :target: https://pypi.python.org/pypi/django-template-analyzer/\n.. image:: https://img.shields.io/codecov/c/github/edoburu/django-template-analyzer/master.svg\n :target: https://codecov.io/github/edoburu/django-template-analyzer?branch=master\n\nThe ``template_analyzer`` package offers an API to analyze the Django template structure.\nIt can be used to find nodes of a particular type, e.g. to do automatic detection of placeholder tags.\n\nSupported features\n==================\n\nThe scanner finds tags in various situations, including:\n\n* Extend nodes\n* Include nodes\n* Overwritten blocks with new definitions\n* Blocks with or without ``{{ block.super }}``\n* Reorganized blocks\n* Ignoring nodes outside blocks in extending templates\n* Handling multiple levels of super includes\n\nThe returned nodes are provided in a natural ordering,\nas they would be expected to appear in the outputted page.\n\nWhile Django offers a ``template.nodelist.get_nodes_of_type()`` function,\nthis function does not produce the same results.\n\n\nAPI example\n===========\n\n.. code-block:: python\n\n from django.template.loader import get_template\n from mycms.templatetags.placeholdertags import Placeholder\n from template_analyzer.djangoanalyzer import get_node_instances\n\n # Load a Django template\n template = get_template(\"mycms/default-page.html\")\n\n # Find all tags in the template:\n placeholders = get_node_instances(template, Placeholder)\n\n # Read information from the template tag themselves:\n # (this is an example, accessing a custom method on the Placeholder object)\n placeholder_names = [p.get_name() for p in placeholders]\n\nInstallation\n============\n\nFirst install the module, preferably in a virtual environment. It can be installed from PyPI::\n\n pip install django-template-analyzer\n\nOr the current folder can be installed::\n\n pip install .\n\n.. include:: CHANGES.rst\n\nCredits\n=======\n\n* This package is based on the work of\n `Django CMS `_. \n* Many thanks to the contributors of ``cms/utils/placeholder.py`` / ``cms/utils/plugins.py`` in Django CMS!", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/edoburu/django-template-analyzer/zipball/master", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/edoburu/django-template-analyzer", "keywords": null, "license": "BSD License", "maintainer": null, "maintainer_email": null, "name": "django-template-analyzer", "package_url": "https://pypi.org/project/django-template-analyzer/", "platform": "OS Independent", "project_url": "https://pypi.org/project/django-template-analyzer/", "project_urls": { "Download": "https://github.com/edoburu/django-template-analyzer/zipball/master", "Homepage": "https://github.com/edoburu/django-template-analyzer" }, "release_url": "https://pypi.org/project/django-template-analyzer/1.6.1/", "requires_dist": null, "requires_python": null, "summary": "Django Template Analyzer - Extract template nodes from a Django template", "version": "1.6.1" }, "last_serial": 2023221, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "151b11ee5270491ee79eba300d0e2e6b", "sha256": "f130ed864dc06e8f9f074ac79a997a8786e324b1f9e49ed4554ef47d48568650" }, "downloads": -1, "filename": "django-template-analyzer-1.0.0.tar.gz", "has_sig": false, "md5_digest": "151b11ee5270491ee79eba300d0e2e6b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5383, "upload_time": "2011-12-20T16:50:23", "url": "https://files.pythonhosted.org/packages/a3/0f/283f65d09e296eeec89e52f2ebea05ada0b075919caf751c3f73d6d21189/django-template-analyzer-1.0.0.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "3e3960254a67c19d772f2f0d3f23c2c4", "sha256": "0af283aad3f785b0291731505b06bb10cbb7e93c3bb9424c0e26db3b9b7e0b5b" }, "downloads": -1, "filename": "django-template-analyzer-1.1.0.tar.gz", "has_sig": false, "md5_digest": "3e3960254a67c19d772f2f0d3f23c2c4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5934, "upload_time": "2012-05-05T16:23:57", "url": "https://files.pythonhosted.org/packages/a5/11/93e5a27eba1bf047f9510abb0a74b2d85ea1de6e2ba22c2806e9ab52daad/django-template-analyzer-1.1.0.tar.gz" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "0b8916f5338eea32a07597c85360960d", "sha256": "3d48f6dff4ed0779b8183784e3aa67d9bdb598ab45e78506e1deb2e5eac5aa5c" }, "downloads": -1, "filename": "django-template-analyzer-1.2.tar.gz", "has_sig": false, "md5_digest": "0b8916f5338eea32a07597c85360960d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5966, "upload_time": "2014-06-04T18:02:38", "url": "https://files.pythonhosted.org/packages/5a/02/fa76b736c9f40e1a13d3425bf88a4700778e5cbbeb28fa3a0c2afc93e523/django-template-analyzer-1.2.tar.gz" } ], "1.3": [ { "comment_text": "", "digests": { "md5": "67f44f5f6acbdc3d953e1db9b01b17a3", "sha256": "d4deac989d34182d8b78770d37cd0a1d97bbe09360c326e5aa4461bc677c7e68" }, "downloads": -1, "filename": "django_template_analyzer-1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "67f44f5f6acbdc3d953e1db9b01b17a3", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 8151, "upload_time": "2014-09-03T08:12:41", "url": "https://files.pythonhosted.org/packages/3d/05/1bc874f8d411f0a4395246636febe0f824bc5938b32054409a98c91cd2aa/django_template_analyzer-1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a604a070423c2710106c9200c9bd7a1e", "sha256": "57473f255bbf083413a9bf96d03db6032eb14d51785c722f73b1d6ada9e3f868" }, "downloads": -1, "filename": "django-template-analyzer-1.3.tar.gz", "has_sig": false, "md5_digest": "a604a070423c2710106c9200c9bd7a1e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6024, "upload_time": "2014-07-07T21:33:48", "url": "https://files.pythonhosted.org/packages/70/0d/cd8626e0be128c3895d28b5c5a5410575da33c7d26a83b2fadd77c825581/django-template-analyzer-1.3.tar.gz" } ], "1.4": [ { "comment_text": "", "digests": { "md5": "b6e7e79199326373eb49fbe16596475e", "sha256": "4823533e09350cdfffba1ecad06ad4d0a8cd2151f9322373fa5858fa1dfee453" }, "downloads": -1, "filename": "django_template_analyzer-1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b6e7e79199326373eb49fbe16596475e", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 8468, "upload_time": "2014-09-22T12:41:48", "url": "https://files.pythonhosted.org/packages/8f/d8/d4383e3880415f60ce9c6c1dd2db53a1ddbc85c06bab15b2745dd969009a/django_template_analyzer-1.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "532c0e98ba732945ee912c28f0d7f1fc", "sha256": "926ec59d97d3021441585dfee1ee35aa5926e1fa45b609572948a0c2acf06a92" }, "downloads": -1, "filename": "django-template-analyzer-1.4.tar.gz", "has_sig": false, "md5_digest": "532c0e98ba732945ee912c28f0d7f1fc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6502, "upload_time": "2014-09-22T12:41:45", "url": "https://files.pythonhosted.org/packages/61/cf/c625714d6e27b9b30aa55553e1c693ab574ce2ede8de0584e7157d7aa366/django-template-analyzer-1.4.tar.gz" } ], "1.5": [ { "comment_text": "", "digests": { "md5": "e63098b4afe15e1dfb7f61ecb6429f75", "sha256": "ef66c6001bfe88ed9030480491f4c929e20ed064faecf1a495e93f72e2ae19c9" }, "downloads": -1, "filename": "django_template_analyzer-1.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e63098b4afe15e1dfb7f61ecb6429f75", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 9327, "upload_time": "2015-04-13T11:31:35", "url": "https://files.pythonhosted.org/packages/32/d7/86c54630cf58ad3afcda51d4e519c96d110cf946afff2144b97d7099384e/django_template_analyzer-1.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "675520aa799e0e33d8b18b745cdb756c", "sha256": "814a86b553319a3356fdc7650f63fd55d3112fd601c47e913b8c7dc826cd24be" }, "downloads": -1, "filename": "django-template-analyzer-1.5.tar.gz", "has_sig": false, "md5_digest": "675520aa799e0e33d8b18b745cdb756c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7015, "upload_time": "2015-04-13T11:31:31", "url": "https://files.pythonhosted.org/packages/f8/71/853221c2e8efe1891e37a3b3ca5e4d9aa335bec8df42c6a157bb4a7fa6d2/django-template-analyzer-1.5.tar.gz" } ], "1.6": [ { "comment_text": "", "digests": { "md5": "b09d34616993a7f0ed925ec3c197c6aa", "sha256": "47ff7c586fe0953d5c80cb5f9b2c3c8d572bdd4ff931f09675849c7e0206a927" }, "downloads": -1, "filename": "django_template_analyzer-1.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b09d34616993a7f0ed925ec3c197c6aa", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9598, "upload_time": "2016-02-23T15:39:00", "url": "https://files.pythonhosted.org/packages/23/5b/a488cdc54870468678ddd52cbb2888bd933706c298425e962b8521b74317/django_template_analyzer-1.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e187869f73b47620e5c0fc0c16ecb73e", "sha256": "7300624e5154fba08553f3e158059397fcd34bb6fa05ace595234066aa0b6038" }, "downloads": -1, "filename": "django-template-analyzer-1.6.tar.gz", "has_sig": false, "md5_digest": "e187869f73b47620e5c0fc0c16ecb73e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7223, "upload_time": "2016-02-23T15:38:54", "url": "https://files.pythonhosted.org/packages/a4/9f/60e8813414cf864f4fd23c771d57df87aaa1d2099cf9bcd494b140773ec0/django-template-analyzer-1.6.tar.gz" } ], "1.6.1": [ { "comment_text": "", "digests": { "md5": "b66dbe19fef045af3e5467b2235eedb4", "sha256": "433029434e79bd0a98f1a35672c6be6d1a363c558fee9f569bc3fae90e51d990" }, "downloads": -1, "filename": "django_template_analyzer-1.6.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b66dbe19fef045af3e5467b2235eedb4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12098, "upload_time": "2016-03-23T17:43:41", "url": "https://files.pythonhosted.org/packages/11/b7/a5fe4faeb95beb65882f5ea2c3869753de4e24871371fcb52eb8f5557672/django_template_analyzer-1.6.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e6d3d9a4f98641c1f9be3a3d96d29a48", "sha256": "12b7cdcacf5b0dc7f54c459b02bd4ad35e61013f509e079b6ae486909c90e8ad" }, "downloads": -1, "filename": "django-template-analyzer-1.6.1.tar.gz", "has_sig": false, "md5_digest": "e6d3d9a4f98641c1f9be3a3d96d29a48", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9070, "upload_time": "2016-03-23T17:43:35", "url": "https://files.pythonhosted.org/packages/4c/16/0e31fb3d46502624cd2d243951bf49bcd92ef5c40d148140cb1fe23d0fec/django-template-analyzer-1.6.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b66dbe19fef045af3e5467b2235eedb4", "sha256": "433029434e79bd0a98f1a35672c6be6d1a363c558fee9f569bc3fae90e51d990" }, "downloads": -1, "filename": "django_template_analyzer-1.6.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b66dbe19fef045af3e5467b2235eedb4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12098, "upload_time": "2016-03-23T17:43:41", "url": "https://files.pythonhosted.org/packages/11/b7/a5fe4faeb95beb65882f5ea2c3869753de4e24871371fcb52eb8f5557672/django_template_analyzer-1.6.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e6d3d9a4f98641c1f9be3a3d96d29a48", "sha256": "12b7cdcacf5b0dc7f54c459b02bd4ad35e61013f509e079b6ae486909c90e8ad" }, "downloads": -1, "filename": "django-template-analyzer-1.6.1.tar.gz", "has_sig": false, "md5_digest": "e6d3d9a4f98641c1f9be3a3d96d29a48", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9070, "upload_time": "2016-03-23T17:43:35", "url": "https://files.pythonhosted.org/packages/4c/16/0e31fb3d46502624cd2d243951bf49bcd92ef5c40d148140cb1fe23d0fec/django-template-analyzer-1.6.1.tar.gz" } ] }