Browser Detection Python / Mod_python?
Solution 1:
HTTP_USER_AGENT
contains this information, and will be passed in the environment variables your application uses. In mod_python, this is expressed as:
def my_request_handler(req):
req.add_common_vars()
agent = req.subprocess_env.get("HTTP_USER_AGENT")
# `agent` now contains the full user agent of the browser, or None
It's a basic CGI thing, but this is how mod_python gives it to you.
Solution 2:
The method suggested by Jed Smith works, but I was sure there was a simpler way.
The req.headers_in
variable contains all the header info, and you can easily access the user agent using mod_python by calling:
req.headers_in[ 'User-Agent' ]
It is not necessary to call req.add_common_vars()
when using this method.
Solution 3:
If you are using the Django-Framework you get the user agent like this
request.META['HTTP_USER_AGENT']
The very nice plugin httpagentparser extracts every detail and puts it a dictionary.
Installation works via pip
pip install httpagentparser
Hope this helps... I googled about 30 min until I found something useful :)
Ron
Post a Comment for "Browser Detection Python / Mod_python?"