通过c#或其他方式控制浏览器



好吧,我知道c#有一个庞大且易于使用的应用程序开发程序,但这正是我现在想要学习的。因此,当用户打开浏览器并在其中输入一些url时,是否可以将这些数据或输入的url address发送到位于其硬盘上的其他代码,例如c#代码或其他示例c++。

简单地说,当用户点击网页上的某个链接或输入某个url或关闭浏览器时,我们可以通过c#代码或任何其他方式检测他在网络浏览器上执行的所有操作吗(我想是插件或插件的工作方式),但是否可以将他的操作发送到c#代码并对其进行编程,并将某些输出返回浏览器,以便浏览器执行并输出给用户。

类似于浏览器-->c#代码-->网站。。我希望c#代码在浏览器和网页之间起作用。

到目前为止我尝试过的工作

我开始在谷歌上搜索,对浏览器的工作原理知之甚少,但仍然找不到解决方案。然而,我认为插件是完成这些任务的方法,并发现了firebreath跨平台,一种为浏览器开发插件的方法。那么这是通过插件实现的吗?如果是的话,你能给我一些好的工具来开发我自己的插件吗。感谢

根据您想要实现的目标,有几个选项:

  • 代理

    您可以实现http代理,并将浏览器配置为使用该代理。代理可以查看所有流量,并可以随心所欲。。。这相当于";浏览器无关";。请参阅此处和此处的链接。

  • 插入式

    你可以实现一个插件。。。所有这都是特定于浏览器的。。。例如,IE曾经有BHO来处理这类事情(不确定IE10是否仍然可以…)。一些选项可以在这里找到,这里,这里。

您可以将FiddlerCore用于此

Fiddler.FiddlerApplication.BeforeRequest += sess =>
{
Console.WriteLine("REQUEST TO : " + sess.fullUrl);
sess.bBufferResponse = true;
};
Fiddler.FiddlerApplication.Startup(8877, true, true);
Console.ReadLine();
Fiddler.FiddlerApplication.Shutdown();
System.Threading.Thread.Sleep(750);

运行完此代码后,打开浏览器并导航到任何页面。

最新更新