【问题标题】:Retrieve current page in Internet Explorer using C#使用 C# 在 Internet Explorer 中检索当前页面
【发布时间】:2013-02-08 16:25:36
【问题描述】:

我目前正在寻找解决问题的方法。我的目标是能够获得已经看过的 HTML 页面的源代码。本来我打算浏览一下 IE 的历史,然后获取每个访问过的站点的源代码,但是目前这不可行,如果可能的话,我正在寻找一种方法,它可以简单地提取当前在 Internet Explorer 中查看的页面,并拉取源代码。

客户端应用程序是否有可能做到这一点?连接到 Internet Explorer 并获取源代码?如果是,如何,参考什么等。请注意,我不希望在客户端使用我自己的浏览器,而是使用应用程序 Internet Explorer。

谢谢!

Internet Explorer 8 / 9。

【问题讨论】:

  • 是的,这可以通过几种不同的方式来实现。我的问题是,到目前为止,您尝试过什么?发布一些代码/你所做的会让你比你现在拥有的更远......
  • 哪个 Internet Explorer?
  • 就像我说的那样,我已经使用并编码的方法是拉取 IE 历史记录,并浏览每个页面,获取其来源并继续前进。因此,我没有尝试过编写代码,因为我不知道该怎么做。也许使用 Spy++ 获取窗口,然后使用其他东西 :S ?
  • 和 Internet Explorer 9
  • 您是在编写一个与 IE 通信的单独应用程序,还是一个插入浏览器的 IE 扩展程序?

标签: c# html api internet-explorer hook


【解决方案1】:

您可以通过两种方法做到这一点。

首先是一个 http 代理,例如 FiddlerCore

其次是 MSHTML(COM 库:Microsoft HTML 对象库)

Dim tWindows As ShellWindows = new ShellWindows
For Each tInstance As IWebBrowser2 in tWindows
  Console.WriteLine(tInstance.LocationURL)
Next

【讨论】:

  • 我添加了一个引用(MSHTML),但仍然告诉我 ShellWindows 不存在:/?编辑:修复了必须导入 Microsoft Internet Controls .. 测试。
猜你喜欢
  • 1970-01-01
  • 2012-10-02
  • 2010-10-12
  • 2010-09-13
  • 1970-01-01
  • 2017-06-04
  • 1970-01-01
  • 2012-02-19
  • 1970-01-01
相关资源
最近更新 更多