Форум сайта python.su
Стоп стоп… так ты забей на остальные… сделай правила по которым отдавай контент под мобилы, а всем остальным обычный…
и не обязательно знать все user agent… можно же сделать что то типа…
if 'Nokia' in os.environ['USER_AGENT']
Офлайн
Это конечно так, но я ж не знаю всех производителей телефонов, комуникаторов, КПК, а тем более вдруг завтра какая-то фирмочка выпустит свой телефон, это ж надо все дописывать….. а так нельзя =(
Офлайн
Ну не каждый же день появляется новый производитель :) забей всех основных..
Во… смотри.
Сделай ссылочку сверху “pda версия”, если по ней щелкнут, подсовывай вариант под мобилу и куда нибудь себе в лог запиши user agent, далее смотри иногда что там накопилось и добавляй новые правила, и будет твоя система обучаться :) Вариант? :)
Офлайн
По-моему очень хороший. Но что делать с теми кто попал с компютера на пда вариант, из поисковика, например?
Можно пробовать узнать разрешение экрана. Если меньше стандартного - то это не монитор, и давать пда ваиант.
Отредактировано (Сен. 18, 2008 19:12:57)
Офлайн
Тоже вариант, но не все через javascript смогут честно ответить.. А поисковик можно не пускать на pda версию. Но линку pda версия нужна, ИМХО! Я например если вижу интересный сайт, у которого есть pda версия, добавляю в закладки мобилы, а там уж в дороге смотрю.. Тем более не всех же юзер агентов, которые на пда зашли, добавлять в список.. Да, придется систему обучать вручную, но иного выхода я не вижу..
Добавлено:
с яваскрипт такие трудности еще: должна загрузиться страница со скриптом, а потом уже инфа на сервер может быть передана, то есть “на лету” не получится..
Отредактировано (Сен. 18, 2008 19:54:07)
Офлайн
Еще раз подумал.. Вот к примеру..
def is_mobile():
devises=['Series','Mini','Motorola','SonyEricsson']
for x in devises:if x in os.environ['USER_AGENT']:return True
return False
Отредактировано (Сен. 18, 2008 21:44:47)
Офлайн