django smartagent是最快、最完整的用户代理解析器
django-smartagent的Python项目详细描述
====
django智能代理
==
描述
----
:作者:
james pacileo
:版本:
0.1.0
:描述:
django智能代理试图为django开发人员提供快速、完整的浏览器检测实用程序。
:要求:
django 1.2+
:
已安装的应用程序=(
…
,
,
…
)
添加中间件
:
s用于将浏览器特性附加到请求对象,可通过**request.browser_info**
user-agent数据文件
----
您可以从github获取最新的数据文件https://github.com/jamespacileo/django smartagent/downloads。
获取最新的数据文件后,将其放在项目下文件夹。要通知django smart agent文件位置,您需要编辑settings.py,方法是添加:
:
smart_agent_settings={
"agent_data set_location":/path/to/agent_data_set.pkl',
}
对于拥有移动版本的站点来说很流行,项目中有一些实用方法。
:
@render_to(template='desktop_template.html',mobile_template='mobile_template.html')
def page(请求):
articles=articles.objects.all()[:30]
返回{
"articles":articles,
}
r/>::
def page(请求):
如果请求,则浏览器信息.get('ismobiledevice')而不是请求.session.get('force_desktop_version'):
返回render_to_response('mobile_tempalte.html',{'articles':articles,},
context_instance=requestcontext(request))
返回render_to_response('desktop_template.html',{'articles':articles,},
context_instance=requestcontext(request))
存在两个实用程序URL,用于强制/取消强制站点的桌面操作。这是因为用户并不总是希望查看站点的移动版本。
-**智能代理/force_desktop_version/**强制移动站点的桌面版本
-**智能代理/force_desktop_version**强制移动设备查看移动版本ion
::
urlpatterns=patterns('',
…
(r'^smartagent/',include('smartagent.urls'))
settings
——
可以在项目设置中添加一个设置变量。
rt_agent_settings={
"agent_dataset_location":"agent s.pk",
}
----
django smartagent将"browser_info"字典添加到"request"对象中,该对象包含与用户浏览器相关的功能。
+??-+-——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————+——+————+————————————————————————————————————————————————————————————————————————————————————————————————————---——————————————————————————————————————————————————————————————————————————————————————————————————/>+——+——————————————————————————————————————————————————————————————————————————————————————————————+
+——+——+————————+————————————————————————————————————————————————————————————————————————————————————+
+???+???+???+
+vbscript+如果浏览器支持visaul basic scripting+
+???+???+???+
+平台+主机平台用户的浏览器+
+——+——+——+——————+————————————————————————————————————————————————————————————————————————————————pApplixJava apple++---------------------------------------------+BR/> +背景音+如果浏览器支持背景声音+BR/> +------------------------------------------------+BR/> +WiN64 + IF。主机操作系统是64位的,如果浏览器支持javascript,则是64位的。+如果浏览器是beta发行版,+
+??-+??-+??-+
+alpha+如果浏览器是alpha发行版,+
+??-+??-+??-+??-+
+minor+次要版本+
+??-+??-+??-+
+ISsyndicationReader+如果用户代理是syndacation reader+
+??-+??-+??-+
+win32+如果主机操作系统是32位的,+
+???+???+???+
+is mobile device+如果主机是移动设备,+
+???+???+??--+
+crawler+如果用户代理是web爬虫程序,+
+——+——+——————+
+win16+如果主机操作系统是16bit+
+——+——+——+—————————————————————————————————————————————————————————————————————————————————————————————————————————---+————————————————————————————————————————————————————--+
django智能代理
==
描述
----
:作者:
james pacileo
:版本:
0.1.0
:描述:
django智能代理试图为django开发人员提供快速、完整的浏览器检测实用程序。
:要求:
django 1.2+
:
已安装的应用程序=(
…
,
,
…
)
添加中间件
:
s用于将浏览器特性附加到请求对象,可通过**request.browser_info**
user-agent数据文件
----
您可以从github获取最新的数据文件https://github.com/jamespacileo/django smartagent/downloads。
获取最新的数据文件后,将其放在项目下文件夹。要通知django smart agent文件位置,您需要编辑settings.py,方法是添加:
:
smart_agent_settings={
"agent_data set_location":/path/to/agent_data_set.pkl',
}
对于拥有移动版本的站点来说很流行,项目中有一些实用方法。
:
@render_to(template='desktop_template.html',mobile_template='mobile_template.html')
def page(请求):
articles=articles.objects.all()[:30]
返回{
"articles":articles,
}
r/>::
def page(请求):
返回render_to_response('mobile_tempalte.html',{'articles':articles,},
context_instance=requestcontext(request))
返回render_to_response('desktop_template.html',{'articles':articles,},
context_instance=requestcontext(request))
存在两个实用程序URL,用于强制/取消强制站点的桌面操作。这是因为用户并不总是希望查看站点的移动版本。
-**智能代理/force_desktop_version/**强制移动站点的桌面版本
-**智能代理/force_desktop_version**强制移动设备查看移动版本ion
::
urlpatterns=patterns('',
…
(r'^smartagent/',include('smartagent.urls'))
settings
——
可以在项目设置中添加一个设置变量。
rt_agent_settings={
"agent_dataset_location":"agent s.pk",
}
----
django smartagent将"browser_info"字典添加到"request"对象中,该对象包含与用户浏览器相关的功能。
+??-+-——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————+——+————+————————————————————————————————————————————————————————————————————————————————————————————————————---——————————————————————————————————————————————————————————————————————————————————————————————————/>+——+——————————————————————————————————————————————————————————————————————————————————————————————+
+——+——+————————+————————————————————————————————————————————————————————————————————————————————————+
+???+???+???+
+vbscript+如果浏览器支持visaul basic scripting+
+???+???+???+
+平台+主机平台用户的浏览器+
+——+——+——+——————+————————————————————————————————————————————————————————————————————————————————pApplixJava apple++---------------------------------------------+BR/> +背景音+如果浏览器支持背景声音+BR/> +------------------------------------------------+BR/> +WiN64 + IF。主机操作系统是64位的,如果浏览器支持javascript,则是64位的。+如果浏览器是beta发行版,+
+??-+??-+??-+
+alpha+如果浏览器是alpha发行版,+
+??-+??-+??-+??-+
+minor+次要版本+
+??-+??-+??-+
+ISsyndicationReader+如果用户代理是syndacation reader+
+??-+??-+??-+
+win32+如果主机操作系统是32位的,+
+???+???+???+
+is mobile device+如果主机是移动设备,+
+???+???+??--+
+crawler+如果用户代理是web爬虫程序,+
+——+——+——————+
+win16+如果主机操作系统是16bit+
+——+——+——+—————————————————————————————————————————————————————————————————————————————————————————————————————————---+————————————————————————————————————————————————————--+