django robots.txt生成器

django-url-robots的Python项目详细描述


Djangorobots.txt生成器。基于使用修饰的django.conf.urls.url。 它得到urlpatterns,并用*替换不明确的部分。

安装和使用

安装django url robots的推荐方法是使用pip

  1. 使用easy_installpip从pypi安装:

    pip install django-url-robots
    
  2. 'url_robots'添加到INSTALLED_APPS

    INSTALLED_APPS = (
        ...
        'url_robots',
        ...
        )
    
  3. 将url_robots视图添加到根urlconf:

    urlpatterns += [
        url(r'^robots\.txt$', url_robots.views.robots_txt),
        ]
    
  4. 用布尔关键字参数robots_allow描述规则,用它url_robots.utils.url代替django.conf.urls.url

    from url_robots.utils import url
    
    urlpatterns += [
       url('^profile/private$', views.some_view, robots_allow=False),
       ]
    

django-url-robotsDjango-1.8+测试。按百分比编码Unicode字符。

设置

此时,只有一个选项可以定义robots.txt文件的模板:

urlpatterns += [
    url(r'^robots\.txt$', url_robots.views.robots_txt, {'template': 'my_awesome_robots_template.txt'}),
    ]

示例

robots_template.txt:

User-agent: *
Disallow: /*  # disallow all
{{ rules|safe }}

网址.py:

from django.conf.urls import include

urlpatterns = [
    url(r'^profile', include('url_robots.tests.urls_profile')),
]

url_profile.py:

from url_robots.utils import url

urlpatterns = [
    url(r'^s$', views.some_view, name='profiles', robots_allow=True),
    url(r'^/(?P<nick>\w+)$', views.some_view),
    url(r'^/(?P<nick>\w+)/private', views.some_view, name='profile_private', robots_allow=False),
    url(r'^/(?P<nick>\w+)/public', views.some_view, name='profile_public', robots_allow=True),
    ]

结果robots.txt:

User-agent: *
Disallow: /*  # disallow all
Allow: /profiles$
Disallow: /profile/*/private*
Allow: /profile/*/public*

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何用java表示这个数学函数的算法   Java/Stream帮助:仅使用streams将嵌套的映射列表转换为映射   使用Selenium连接到数据库时发生java未知主机异常   java如何了解jvm内存使用:“堆内存”和“堆外内存”   java Oracle BI报告导入模板   java如何使用Spring将xml转换为bean?   java线程。join()以保证执行顺序   java从THINGSPEAK到ANDROID应用程序获取JSON数据   使用Java的stanford库中的异常   java正确使用来自其他类文件的方法   如果集合中的元素类型为接口类型,如何填充集合?(爪哇)   记录java。util。记录器创建的文件超过了应有的数量   类Java对象uniq值   尝试调用无法应用于()的方法时出现java错误