谷歌浏览器更改useragent?谷歌浏览器更改语言

大家好,谷歌浏览器更改useragent相信很多的网友都不是很明白,包括谷歌浏览器更改语言也是一样,不过没有关系,接下来就来为大家分享关于谷歌浏览器更改useragent和谷歌浏览器更改语言的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!

谷歌浏览器更改useragent?谷歌浏览器更改语言

本文目录

  1. 为什么浏览器User-agent总是有Mozilla字样
  2. firefox手动更改useragent和使用插件改useragent的方法
  3. 如何使用JavaScript的userAgent属性判断浏览器类型

一、为什么浏览器User-agent总是有Mozilla字样

你是否好奇标识浏览器身份的User-Agent,为什么每个浏览器都有Mozilla字样?

Mozilla/5.0(WindowsNT6.1;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/27.0.1453.94Safari/537.36

Mozilla/5.0(Linux;U;Android4.1.2;zh-tw;GT-I9300Build/JZO54K)AppleWebKit/534.30(KHTML,likeGecko)Version/4.0MobileSafari/534.30

Mozilla/5.0(WindowsNT6.1;WOW64;rv:20.0)Gecko/20100101Firefox/20.0

Mozilla/5.0(compatible;MSIE9.0;WindowsNT6.0;Trident/5.0)

故事还得从头说起,最初的主角叫NCSAMosaic,简称Mosaic(马赛克),是1992年末位于伊利诺伊大学厄巴纳-香槟分校的国家超级计算机应用中心(NationalCenterforSupercomputingApplications,简称NCSA)开发,并于1993年发布的一款浏览器。它自称“NCSA_Mosaic/2.0(Windows3.1)”,Mosaic可以同时展示文字和图片,从此浏览器变得有趣多了。

然而很快就出现了另一个浏览器,这就是著名的Mozilla,中文名称摩斯拉。一说Mozilla=Mosaic+Killer,意为Mosaic杀手,也有说法是Mozilla=Mosaic&Godzilla,意为马赛克和哥斯拉,而Mozilla最初的吉祥物是只绿色大蜥蜴,后来更改为红色暴龙,跟哥斯拉长得一样。

但Mosaic对此非常不高兴,于是后来Mozilla更名为Netscape,也就是网景。Netscape自称“Mozilla/1.0(Win3.1)”,事情开始变得更加有趣。网景支持框架(frame),由于大家的喜欢框架变得流行起来,但是Mosaic不支持框架,于是网站管理员探测useragent,对Mozilla浏览器发送含有框架的页面,对非Mozilla浏览器发送没有框架的页面。

后来网景拿微软寻开心,称微软的Windows是“没有调试过的硬件驱动程序”。微软很生气,后果很严重。此后微软开发了自己的浏览器,这就是InternetExplorer,并希望它可以成为NetscapeKiller。IE同样支持框架,但它不是Mozilla,所以它总是收不到含有框架的页面。微软很郁闷很快就沉不住气了,它不想等到所有的网站管理员都了解IE并且给IE发送含有框架的页面,它选择宣布IE是兼容Mozilla,并且模仿Netscape称IE为“Mozilla/1.22(compatible;MSIE2.0;Windows95)”,于是IE可以收到含有框架的页面了,所有微软的人都嗨皮了,但是网站管理员开始晕了。

因为微软将IE和Windows捆绑销售,并且把IE做得比Netscape更好,于是第一次浏览器血腥大战爆发了,结果是Netscape以失败退出历史舞台,微软更加嗨皮。但没想到Netscape居然以Mozilla的名义重生了,并且开发了Gecko,这次它自称为“Mozilla/5.0(Windows;U;WindowsNT5.0;en-US;rv:1.1)Gecko/20020826”。

Gecko是一款渲染引擎并且很出色。Mozilla后来变成了Firefox,并自称“Mozilla/5.0(Windows;U;WindowsNT5.1;sv-SE;rv:1.7.5)Gecko/20041108Firefox/1.0”。Firefox性能很出色,Gecko也开始攻城略地,其他新的浏览器使用了它的代码,并且将它们自己称为“Mozilla/5.0(Macintosh;U;PPCMacOSXMach-O;en-US;rv:1.7.2)Gecko/20040825Camino/0.8.1”,以及“Mozilla/5.0(Windows;U;WindowsNT5.1;de;rv:1.8.1.8)Gecko/20071008SeaMonkey/1.0”,每一个都将自己装作Mozilla,而它们全都使用Gecko。

Gecko很出色,而IE完全跟不上它,因此useragent探测规则变了,使用Gecko的浏览器被发送了更好的代码,而其他浏览器则没有这种待遇。Linux的追随者对此很难过,因为他们编写了Konqueror,它的引擎是KHTML,他们认为KHTML和Gecko一样出色,但却因为不是Gecko而得不到好的页面,于是Konqueror为得到更好的页面开始将自己伪装成“likeGecko”,并自称为“Mozilla/5.0(compatible;Konqueror/3.2;FreeBSD)(KHTML,likeGecko)”。自此useragent变得更加混乱。

这时更有Opera跳出来说“毫无疑问,我们应该让用户来决定他们想让我们伪装成哪个浏览器。”于是Opera干脆创建了菜单项让用户自主选择让Opera浏览器变成“Mozilla/4.0(compatible;MSIE6.0;WindowsNT5.1;en)Opera9.51”,或者“Mozilla/5.0(WindowsNT6.0;U;en;rv:1.8.1)Gecko/20061208Firefox/2.0.0Opera9.51”,或者“Opera/9.51(WindowsNT5.1;U;en)”。

后来苹果开发了Safari浏览器,并使用KHTML作为渲染引擎,但苹果加入了许多新的特性,于是苹果从KHTML另辟分支称之为WebKit,但它又不想抛弃那些为KHTML编写的页面,于是Safari自称为“Mozilla/5.0(Macintosh;U;PPCMacOSX;de-de)AppleWebKit/85.7(KHTML,likeGecko)Safari/85.5”,这进一步加剧了useragent的混乱局面。

因为微软十分忌惮Firefox,于是IE重装上阵,这次它自称为“Mozilla/4.0(compatible;MSIE8.0;WindowsNT6.0)”,并且渲染效果同样出色,但是需要网站管理员的指令它这么做才行。

再后来,谷歌开发了Chrome浏览器,Chrome使用Webkit作为渲染引擎,和Safari之前一样,它想要那些为Safari编写的页面,于是它伪装成了Safari。于是Chrome使用WebKit,并将自己伪装成Safari,WebKit伪装成KHTML,KHTML伪装成Gecko,最后所有的浏览器都伪装成了Mozilla,这就是为什么所有的浏览器User-Agent里都有Mozilla。Chrome自称为“Mozilla/5.0(Windows;U;WindowsNT5.1;en-US)AppleWebKit/525.13(KHTML,likeGecko)Chrome/0.2.149.27Safari/525.13”。

因为以上这段历史,现在的User-Agent字符串变得一团糟,几乎根本无法彰显它最初的意义。追根溯源,微软可以说是这一切的始作俑者,但后来每一个人都在试图假扮别人,最终把User-Agent搞得混乱不堪。

一句话结论:因为网站开发者可能会因为你是某浏览器(这里是Mozilla),所以输出一些特殊功能的程序代码(这里指好的特殊功能),所以当其它浏览器也支持这种好功能时,就试图去模仿Mozilla浏览器让网站输出跟Mozilla一样的内容,而不是输出被阉割功能的程序代码。大家都为了让网站输出最好的内容,都试图假装自己是Mozilla一个已经不存在的浏览器??

1995年8月16日:InternetExplorer

二、firefox手动更改useragent和使用插件改useragent的方法

当浏览器连接到网站时,它将会告诉网站该浏览器的类型。某些网站可能有意或无意间关闭了对于某些浏览器的响应。由于浏览器总是在持续不断的开发,网页设计者所作的假设可能会带来负面效果。遇到此类情况时,可以指定浏览器识别,然后重新载入页面以解决问题。

修改浏览器userAgent,这个我们要根据浏览器不同,而修改方法不同。下面遨游浏览器及火狐浏览器修改userAgent为例:

   遨游浏览器修改userAgent

打开遨游浏览器,依次点击工具遨游设置中心...高级选项

   然后在右侧找到“自定义userAgent字符串”,勾选后,在下面的文本框中输入自定义的UserAgent,然后再重启浏览器即可。

打开火狐浏览器,点击工具附件组件,然后在获取附加组件选项卡里搜索"user Agent Switcher"安装即可使用。

   或者到User Agent Switcher 0.7.3修改firefox的user agent扩展进行下载安装也可。

   安装成功后,会在工具菜单下面找到user Agent,上面已有默认的user Agent,自己也可以自定义user Agent

   有些浏览器就没有提供修改user Agent方法,如IE。我们就暂时没办法修改user Agent了。

   浏览器识别的 UA变化

   以 Opera 10.70(简体中文语言包)在 WindowsXp下为例:

   识别为 Opera

   Opera/9.80(Windows NT 5.1; U; zh-cn) Presto/2.6.31 Version/10.70

   识别为 Firefox

   Mozilla/5.0(Windows NT 5.1; U; zh-cn; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6 Opera 10.70

   Mozilla/4.0(compatible; MSIE 8.0; Windows NT 5.1; zh-cn) Opera 10.70

   伪装为 Firefox

   Mozilla/5.0(Windows NT 5.1; U; zh-cn; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6

   Mozilla/4.0(compatible; MSIE 8.0; Windows NT 5.1; zh-cn)

Firefox手动更改UserAgent的方法

通过火狐浏览器本身的设置来修改。

   火狐浏览器修改userAgent的办法一:

   在火狐浏览器地址栏输入“about:config”,按下回车进入设置菜单。

   找到“general.useragent.override”,如果没有这一项,则点右键“新建”-“字符串”,输入这个字符串。

   将其值设为自己想要的UserAgent。

   火狐浏览器修改userAgent的办法二:

   user Agent Switcher插件。下载地址:User Agent Switcher 0.7.3修改firefox的user agent扩展

   详细安装方法见:

   每款浏览器都有自己不同的user Agent,而且通过user Agent可以判断浏览器版本、所用的操作系统等参数。

   Firefox几个版本的userAgent大致如下:

Mozilla/5.0(Windows; U; Windows NT 5.2) Gecko/2008070208 Firefox/3.0.1

   Mozilla/5.0(Windows; U; Windows NT 5.1) Gecko/20070309 Firefox/2.0.0.3

   Mozilla/5.0(Windows; U; Windows NT 5.1) Gecko/20070803 Firefox/1.5.0.12

   其中,版本号是Firefox之后的数字

其他浏览器的User Agent String可以参见User Agent String.Com的List of User Agent Strings:

基本包含了国外各种软硬件浏览器的UserAgent。

三、如何使用JavaScript的userAgent属性判断浏览器类型

1、判断浏览器的类型我们可以使用JavaScript中提供的Navigator对象的userAgent属性,它是唯一可以获取运行JavaScript的浏览器类型和版本等信息的属性,使用简单方便,但是如果做出错误的浏览器判断顺序则容易出错,因此必须要小心。

2、我们先来看一下userAgent属性的基本语法

3、window.navigator.userAgent;通过这样就可以获得描述浏览器信息的“字符串”作为返回值。

4、重点是将信息作为字符串获取到最后!

5、因此,有必要使用诸如indexOf()之类的方法在字符信息中提取浏览器的类型和版本。

6、让我们创建一个实际获取浏览器类型的程序!

7、首先从userAgent属性获取浏览器信息开始。

8、var agent= window.navigator.userAgent;

9、var agent= window.navigator.userAgent.toLowerCase();方法①和平常一样使用userAgent属性,不过,②最后执行的是toLowerCase()。

10、实际上,获取的浏览器信息是大写和小写字母的混合字符串,因此基本上将它全部用小写或大写字母更容易判断。

11、因此,一般来说,我会用方法②写下来!

12、var agent= window.navigator.userAgent.toLowerCase();

13、var result= agent.indexOf('chrome')>-1;

14、console.log(result);在这个例子中,使用了indexOf()确认取得了浏览器信息「chrome」的文字是否存在。

15、如果没有,则返回“-1”,如果存在,则返回“字符位置”。

16、因此,通过“>-1”的比较,可以得到“true/ false”,所以可以进行判定。

17、目前,有各种浏览器,例如“IE”,“Chrome”,“Safari”,“Firefox”为主流浏览器

18、让我们看看如何判断每个浏览器!

19、一般来说,基本上是通过IF语句按顺序判断每个浏览器名称。

20、var agent= window.navigator.userAgent.toLowerCase();

21、if(agent.indexOf('msie')>-1){

22、 console.log('IE浏览器');

23、} else if(agent.indexOf('edge')>-1){

24、 console.log('Edge浏览器');

25、} else if(agent.indexOf('chrome')>-1){

26、 console.log('Chrome浏览器');

27、} else if(agent.indexOf('safari')>-1){

28、 console.log('Safari浏览器');

29、} else if(agent.indexOf('firefox')>-1){

30、 console.log('Firefox浏览器');

31、 console.log('其他浏览器');

32、}在此示例中,使用userAgent获取浏览器信息,并且indexOf()按顺序判断每个浏览器名称。

33、我们在开始时介绍了一点,但比较的顺序是很重要的!

34、实际上,当您使用userAgent属性检查Edge浏览器时,它包含字符“chrome”和“safari”。

35、此外,查看Chrome浏览器包含“safari”一词。

36、这样,有些情况下会包含与原始浏览器不同的名称,因此有必要首先比较要调查的浏览器。

37、基本上,至少让我们保证“Edge”→“Chrome”→“Safari”的顺序!

好了,文章到此结束,希望可以帮助到大家。

声明:信息资讯网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者东方体育日报所有。若您的权利被侵害,请联系 删除。

本文链接:http://www.gdxhedu.com/news/166777.html