Django软件包,可以轻松识别访客的浏览器、操作系统和设备信息(手机、平板电脑或具有触摸功能)。
django-useragents的Python项目详细描述
修正了原始的django用户代理的中间件问题,该软件包允许轻松识别访问者的浏览器、操作系统和设备信息,包括访问者是否使用移动电话、平板电脑或触摸设备。在幕后,
它使用"用户代理"https://github.com/selwin/python user agents>;` `.
installation
===
1。安装"django user agents",必须先安装"user agents":
pip install django user agents
2。配置"settings.py":
…代码块::python
已安装的应用程序=(
che.backends.memcached.memcached cache',
'位置':'127.0.0.1:11211',
}
}
如果未指定默认值,则将使用缓存别名。设置为"none"将禁用缓存。
用户代理缓存=默认值
用法
=
代码块::python
中间件类=(
其他中间件…
"django_user_agents.middleware.useragentmiddleware",
)
一个"user_agent"属性现在将添加到"request"中,您可以在"views.py"中使用该属性:
。代码块::python
def my_view(请求):
r/>request.user_agent.is_pc返回false
request.user_agent.is_bot返回false
访问用户代理的浏览器属性
request.user_agent.browser返回浏览器(family=u'mobile safari',version=(5,1),version_string=(5.1')
request.user廑agent.browser.family廑返回"mobile safari"
request.user廑agent.browser.version廑返回(5,1)
request.user廑agent.browser.version廑返回"5.1"
操作系统属性
request.user廑agent.os廑返回operatingsystem(family=u'ios,version=(5,1),version_string='5.1')
请求。用户_agent.os.family返回"ios"
请求。用户_agent.os.version返回(5,1)
请求。用户_agent.os.version_string返回"5.1"
设备属性
请求st.user_agent.device_returns device(family='iphone')
request.user戋agent.device.family_returns'iphone'
如果您有'django.core.context戋处理器。request``已启用,`'user戋agent``
也可以通过'request``在模板中使用:
{%if request.user_u agent.is_mobile%}
在这里做事情……
{%endif%}
view usage
——
``django-user_agents``带有一个``get_u user_agent``参数,它接受一个`
``request``参数并返回一个``useragent``实例。示例用法:
…代码块::python
o其他内容……
模板使用
----
``django-user_agents``附带了一些模板过滤器:
*``是移动的`
*``是平板电脑`
*``是可触摸的`
*``s_pc``
*``是bot`
您可以像任何其他django模板过滤器一样使用所有这些::
{%load user戋agents%}
{%if request_is戋mobile%}
mobile device stuff…
{%endif%}
{%if request_is戋tablet%}
tablet stuff…
{%endif%}
{%if请求是PC%}
PC材料……
{%endif%}
{%if请求是触摸设备材料……
{%endif%}
{%if请求是BOT%}
{%bot材料……
{%endif%}
{%if
有关用户代理属性的详细信息,请访问"here<;https://github.com/selwin/python user agents"`.
>运行测试
====
。代码块::console
`which django admin.py`test django_user_agents--settings=django_user_agents.tests.settings--pythonpath=.
===
<0.3.1
----
*修复了请求没有元属性时的错误
<0.3.0
----
*python 3,感谢@hwkns!
0.2.2
-
*修复了当用户代理超过250个字符时导致缓存集/读取失败的错误
0.2.1
-
-
*修复了打包
<0.2.0
-
*添加了模板过滤器
*在utils中添加了"get-u-user-agent"功能。py
0.1.1
-----
*修复了"http用户代理"为空时的"keyerror"异常
它使用"用户代理"https://github.com/selwin/python user agents>;` `.
installation
===
1。安装"django user agents",必须先安装"user agents":
2。配置"settings.py":
…代码块::python
已安装的应用程序=(
che.backends.memcached.memcached cache',
'位置':'127.0.0.1:11211',
}
}
如果未指定默认值,则将使用缓存别名。设置为"none"将禁用缓存。
用户代理缓存=默认值
用法
=
代码块::python
中间件类=(
其他中间件…
"django_user_agents.middleware.useragentmiddleware",
)
一个"user_agent"属性现在将添加到"request"中,您可以在"views.py"中使用该属性:
。代码块::python
def my_view(请求):
r/>request.user_agent.is_pc返回false
request.user_agent.is_bot返回false
访问用户代理的浏览器属性
request.user_agent.browser返回浏览器(family=u'mobile safari',version=(5,1),version_string=(5.1')
request.user廑agent.browser.family廑返回"mobile safari"
request.user廑agent.browser.version廑返回(5,1)
request.user廑agent.browser.version廑返回"5.1"
操作系统属性
request.user廑agent.os廑返回operatingsystem(family=u'ios,version=(5,1),version_string='5.1')
请求。用户_agent.os.family返回"ios"
请求。用户_agent.os.version返回(5,1)
请求。用户_agent.os.version_string返回"5.1"
设备属性
请求st.user_agent.device_returns device(family='iphone')
request.user戋agent.device.family_returns'iphone'
如果您有'django.core.context戋处理器。request``已启用,`'user戋agent``
也可以通过'request``在模板中使用:
{%if request.user_u agent.is_mobile%}
在这里做事情……
{%endif%}
view usage
——
``django-user_agents``带有一个``get_u user_agent``参数,它接受一个`
``request``参数并返回一个``useragent``实例。示例用法:
…代码块::python
o其他内容……
模板使用
----
``django-user_agents``附带了一些模板过滤器:
*``是移动的`
*``是平板电脑`
*``是可触摸的`
*``s_pc``
*``是bot`
您可以像任何其他django模板过滤器一样使用所有这些::
{%load user戋agents%}
{%if request_is戋mobile%}
mobile device stuff…
{%endif%}
{%if request_is戋tablet%}
tablet stuff…
{%endif%}
{%if请求是PC%}
PC材料……
{%endif%}
{%if请求是触摸设备材料……
{%endif%}
{%if请求是BOT%}
{%bot材料……
{%endif%}
{%if
有关用户代理属性的详细信息,请访问"here<;https://github.com/selwin/python user agents"`.
>运行测试
====
。代码块::console
`which django admin.py`test django_user_agents--settings=django_user_agents.tests.settings--pythonpath=.
<0.3.1
----
*修复了请求没有元属性时的错误
<0.3.0
----
*python 3,感谢@hwkns!
0.2.2
-
*修复了当用户代理超过250个字符时导致缓存集/读取失败的错误
0.2.1
-
-
*修复了打包
<0.2.0
-
*添加了模板过滤器
*在utils中添加了"get-u-user-agent"功能。py
0.1.1
-----
*修复了"http用户代理"为空时的"keyerror"异常