过去几周我有一个问题困扰着我。
我想要实现的目标:我需要一个能够更改用户代理(一旦启动)和引用者的webbrowser控件。但最重要的是看到网址响应的能力。我的意思是,例如,如果你导航到一个网站你得到回来Images / Javascripts文件作为回应我需要访问这些网址(常规Web浏览器控件不会显示那些&你不能以任何方式访问它)。
我能够通过webbrowser + fiddlercore做到这一点我可以看到并使用这些网址做任何事情。问题是如果你运行这个程序的几个实例(或者有时一次,如果程序有一些自动化来处理url响应)它会卡住或不起作用。我尝试修复它并使其工作,但它是一种无法正常工作的hacky解决方案。我需要一种简单的方法来访问这些网址,就像你使用httpwebrequest但是作为webbrowser一样。为什么我需要它作为webbrowser?我工作的方式我需要执行所有跟踪像素和脚本和图像等。一个普通的webbrowser行为在httpwebrequest中如果你想谷歌分析你必须创建一个代码来重新创建它,你不能只是导航和所有脚本将作为webbrowser执行,或者你可以吗?
你们可以给我一些帮助或指导我应该朝哪个方向看看吗?非常感谢!
答案 0 :(得分:1)
我认为这就是你要找的东西:
Replacing .NET WebBrowser control with a better browser, like Chrome?
然而,那里有许多其他“浏览器包装”实现,如果该答案看起来没什么好看,请告诉我,我会尝试推荐另一个。
答案 1 :(得分:1)
介意用geckofx(mozilla firefox ENGINE)替换一些?
从这开始:
现在你可以使用xulrunner 16(mozilla firefox 16的主引擎)。
Here关于xulrunner中的useragent的文章
答案 2 :(得分:0)
可能不是最佳解决方案,但您可以处理标准DocumentCompleted
控件的WebBrowser
事件。每次激活时,您都可以访问WebBrowser.Document.Images
中的图片代码,并使用正则表达式获取他们的网址并解析WebBrowser.DocumentText
.js网址,或者使用WebBrowser.Document
上的Html Agility Pack来获取所有内容有趣的元素......