以下方法为判断web访问来源是PC端还是手机端

def judge_pc_or_mobile(ua):"""判断访问来源是pc端还是手机端:param ua: 访问来源头信息中的User-Agent字段内容:return:"""factor = uais_mobile = False_long_matches = r'googlebot-mobile|android|avantgo|blackberry|blazer|elaine|hiptop|ip(hone|od)|kindle|midp|mmp' \r'|mobile|o2|opera mini|palm( os)?|pda|plucker|pocket|psp|smartphone|symbian|treo|up\.(browser|link)' \r'|vodafone|wap|windows ce; (iemobile|ppc)|xiino|maemo|fennec'_long_matches = re.compile(_long_matches, re.IGNORECASE)_short_matches = r'1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)' \r'|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)' \r'|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw' \r'|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8' \r'|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit' \r'|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)' \r'|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji' \r'|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|e\-|e\/|\-[a-w])|libw|lynx' \r'|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi' \r'|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)' \r'|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg' \r'|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21' \r'|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-' \r'|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it' \r'|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)' \r'|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)' \r'|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit' \r'|wi(g |nc|nw)|wmlb|wonu|x700|xda(\-|2|g)|yas\-|your|zeto|zte\-'_short_matches = re.compile(_short_matches, re.IGNORECASE)if _long_matches.search(factor) != None:is_mobile = Trueuser_agent = factor[0:4]if _short_matches.search(user_agent) != None:is_mobile = Truereturn is_mobile

python如何判断web访问来源是PC端还是手机端相关推荐

  1. 判断访问来源是pc端还是手机端

    判断访问来源是pc端还是手机端(python) def judge_pc_or_mobile(ua):"""判断访问来源是pc端还是手机端:param ua: 访问来源头 ...

  2. JavaScript 代码判断:PC端和手机端

    js代码· 示下: <script> if ((navigator.userAgent.match(/(phone|pad|pod|iPad|iPod|iPhone|ios|Android ...

  3. html手机pc不同页面,PC端和手机端如何同时生成静态页

    静态页是和图片类似的静态资源,访问静态资源不会经过程序处理,不会根据浏览器返回不同页面.要同时支持PC端和手机端浏览器,且要生成静态页时,最好使用bootstrap之类的技术,实现自适应页面设计. 如 ...

  4. 【工具】PC端调试手机端 Html 页面的工具

    一.概述 有一个项目需要在手机端显示一个 web 页面,而每次把应用 launch 后,从手机端看比较麻烦,因此搜罗了几种在 PC 端调试手机端页面的工具. 二.工具 http://fonkie.it ...

  5. html自动跳转手机端,用JavaScript实现网站自动跳转电脑PC端与手机端不同页面

    前天,有一个网友希望在其微擎系统跳转的时候实现鉴别用户不同的客户端,比如电脑PC端和手机端,实现不同的页面跳转.对于之前老蒋有给其设置过PC端网站然后检测手机访问的时候跳转到WAP网站的案例,对于这个 ...

  6. PC端和手机端字体显示不一致的解决办法

    主要解决PC端和手机端字体显示不一致的的问题: 主要是在head标签里面添加几个meta页面 添加的meta标签如下 <meta http-equiv="Content-Type&qu ...

  7. [html] 制作一个页面时,需要兼容PC端和手机端,你是要分别做两个页面还是只做一个页面自适应?为什么?说说你的理由

    [html] 制作一个页面时,需要兼容PC端和手机端,你是要分别做两个页面还是只做一个页面自适应?为什么?说说你的理由 两个页面 pc端布局和交互行为跟移动端不一样, 两个页面反而更好维护 个人简介 ...

  8. 前端pc端、手机端适配基本知识

    前端pc端.手机端适配问题 一个项目如何做到手机.电脑共用的方式 1.第一种方式:响应式布局(栅格布局),即通过媒体查询控制css样式,从而实现一套代码手机.电脑共享.一般而言,手机.电脑共享样式,其 ...

  9. php自动识别pc和手机端并跳转,JS如何实现网站中PC端和手机端自动识别并跳转对应的代码...

    1.  代码场景: 描述:在项目中,一般我们会使用响应式布局的方式或者借助bootstrap等插件来做响应式的网站.但是根据业务的需求,手机端可能会在功能上精简很多,我们也会写两套代码,分别用来实现P ...

最新文章

  1. 函数 tostring_Kotlin实战之Fuel的高阶函数
  2. 下一次农业革命,微生物或为突破口
  3. 深度学习未来十大趋势
  4. cpu java poi 导出_java基于poi导出excel透视表代码实例
  5. 【Bootloader】探究bootloader,分析u-boot源码
  6. windows 2008 enterprise tcpip.sys问题总结。
  7. 服务器3个w目录文件夹,第 4 章 目录服务器条目 (Sun Java System Directory Server Enterprise Edition 6.2 管理指南)...
  8. linux哪个命令可以切换工作目录?如何显示当前所在的目录,Linux cd命令:切换目录...
  9. android扩散波动动画,使用WebGL制作图片的像素脉冲波(粒子化扩散波动)动画特效...
  10. 微软2022服务器,​微软公开地分享了即将发布的WindowsServer 2022的特性
  11. 微信小程序|开发实战篇之十-一些细节处理
  12. solr6.0.0 + tomcat8 配置问题
  13. betterscroll的使用
  14. FPGA学习日志——分频与降频divider
  15. css3实现流星划过动画效果
  16. 无线耳机哪个品牌好?四大国内蓝牙耳机品牌排行
  17. java根据经纬度转地址或者根据地址转经纬度
  18. 沉睡者IT:零基础学习短视频与+玩转抖音快手
  19. 【音视频基础】音频基础理论
  20. vue+openlayers添加点击事件进行图片标记

热门文章

  1. OpenNI 2.0
  2. pytorch中的一维数组,是列向量还是行向量?
  3. pip版本更新的问题
  4. 用HTML5和JavaScript做一个轮播图
  5. 如何突破LinkedIn领英限制,导出非好友邮箱等社交方式
  6. mac 升级php7.3版本之后Redis扩展升级(phpredis)
  7. Ubuntu16.04笔记本 安装R RStudio
  8. JS_鼠标移入移出触发事件
  9. thinkphp5使用腾讯云发送短信验证码服务
  10. linux程序后台运行详解