IE浏览器设置UserAgent

参考:

https://www.jianshu.com/p/91215e310e8e

https://blog.youkuaiyun.com/cuixiping/article/details/45058201

https://blog.youkuaiyun.com/henter/article/details/51036657

在运行中输入“gpedit.msc”打开本地组策略编辑器

在计算机配置->管理模板->Windows组件->Internet Explorer选项下,双击右侧设置中“自定义用户代理字符串” 进行设置

重启IE生效

----------------------------------------------------------------------------

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent\Post Platform

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent\Post Platform

右侧的列表就是 IE10/IE11的User Agent附加字符串了,把右侧这些项都删掉吧。(可以用鼠标框选多个,然后右键删除)

重新打开IE,F12调出控制台,输入 navigator.userAgent 回车看到类似这样的:

Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; LCJB; rv:11.0) like Gecko

已经变得非常苗条了有没有?

-------------------------------------------

VC 中使用 WebBrowser 控件时自定义 User-Agent 的方法至少有以下两种。

第一种方法(有局限性):

    WebBrowser 控件的 Navigate 方法定义如下:

void Navigate(LPCTSTR URL, VARIANT * Flags, VARIANT * TargetFrameName, VARIANT * PostData, VARIANT * Headers);

    该方法用到的最后一个参数可以用来修改 User-Agent 的默认值,难点在于它并不是一个简单的字符串类型的变量,而是一个 VARIANT 类型的指针。要把 User-Agent 的值用 VARIANT 类型的变量来表达出来,需要做一些转换工作,可以参考以下示例代码片段:
    /* 设置 HTTP 头中的 User-Agent 字段 */
    char UserAgentVal[] = "User-Agent:MyCustomizedBrowser"; /* 假定要将 User-Agent 的值设为 MyCustomizedBrowser */
    char VisitUrl[] = "http://www.baidu.com"; /* 假定要用 WebBrowser 控件显示百度主页 */
    
    _bstr_t bstrVal(UserAgentVal);
    VARIANT varString;
    varString.vt = VT_BSTR;
    varString.bstrVal = bstrVal;
    MsWebBrowser.Navigate(VisitUrl, NULL, NULL, NULL, &varString); /* MsWebBrowser是 WebBrowser 控件对应变量的名字,因程序而异 */
---------------------------------------------

第二种方法:

    要想在使用 WebBrowser 控件连续访问多个页面时,一直使用设定的 User-Agent 值,需要用到 urlmon.dll 中的 UrlMkSetSessionOption( ) 函数,MSDN 网站上介绍这个函数的网页链接为:

https://msdn.microsoft.com/en-us/library/ms775125(VS.85).aspx

这个函数的定义为:

STDAPI UrlMkSetSessionOption(DWORD dwOption, __in_bcount_opt(dwBufferLength) LPVOID pBuffer, DWORD dwBufferLength, __reserved DWORD dwReserved);

使用这个函数时,需要使用指令 #include "UrlMon.h" 来包含头文件。可以参考以下示例代码片段
    char UserAgentVal[] = "MyCustomizedBrowser";
    char VisitUrl[] = "http://www.baidu.com";
    UrlMkSetSessionOption(URLMON_OPTION_USERAGENT, UserAgentVal, (strlen(UserAgentVal) + 1), 0);
    MsWebBrowser.Navigate(VisitUrl, NULL, NULL, NULL, NULL);
 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

friendan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值