【发布时间】:2012-02-25 17:13:18
【问题描述】:
我正在使用 Google 的 Apex 系统参加在线课程,并且希望能够自动保存来自某些页面的数据。正常浏览时登录和获取内容的流程如下:打开webapp并登录,导航我要查看的课程,点击课程。当我单击要学习的课程时,它会打开一个包含课程的新窗口。这是我无法通过程序完成的部分。
我想到的第一个方法是使用 PHP,请求网页并简单地保存它们。问题是有一个登录,以及一些我不知道如何使用 php 自动化的 javascript 事件和事情。我已经通过 POST 请求登录,但无法弄清楚其余部分。
今天我尝试使用 dotnet WebBrowser 控件使用 Windows 窗体、C# 来实现。我让它为我登录并导航到我需要选择要打开的课程的页面,但是如果我单击该链接,它会尝试在 Internet Explorer 中打开该网页。如果我使用它打开的链接,我会从网站收到错误消息。
检查我遇到问题的页面上的链接,我发现了打开新窗口的 javascript 事件。它使用重定向链接打开它。在新选项卡而不是新窗口中使用此重定向链接在 Chrome 中有效,但我不知道如何从 C# 获取重定向链接。 a 元素在 iframe 内,我必须在那里获取链接。 How can I, in C#, retrieve an element from within an iframe?
另外,有没有更好的方法来做到这一点?
【问题讨论】: