我正在使用 .NET 3.5 构建一个 C# 应用程序,该应用程序需要登录到一个网站并选择一些选项,然后转到另一个包含 Excel 文件链接的页面。我想知道如何继续执行这些步骤。
1) 加载网页(在应用程序的窗口中隐藏或可见,最好隐藏)。
2) 输入用户名/密码组合并提交到网站。
3) 根据提供的帐户选择适当的选项(只需要知道如何通过复选框和列表)。
4) 进入下一页并加载链接中的文件(也许将它下载到一个临时位置,读取它然后删除)。
更新:
我有一个在工作中使用的应用程序,它执行以下操作......
当我运行应用程序时,它会登录到服务器以验证我的 session 。该应用程序有一个按钮,单击该按钮会使用网页本身显示/隐藏页面上的当前事件。
应用程序加载页面,输入用户名,然后输入密码并提交。然后在服务器上验证 session 。
但我的应用程序有点不同,我的应用程序将加载网页(主页)登录然后选择一些选项(我将根据页面设置这些选项)然后在下一页上,会有一个链接我将加载 excel 或我的应用程序(无论我能做什么),然后根据用户输入对结果执行我的操作。
最佳答案
使用 HttpWebRequest
和 HttpWebResponse
的一系列 POST 和 GET 将帮助您解决问题。
虽然这根本不是一件容易的事。您还需要一些工具来实际获取网页的“逻辑”,或者换句话说,嗅探它以查看您必须如何组织 GET 和 POST。使用类似 Fiddler 的工具完成这个任务。
一旦您了解了需要下注 GET 和需要 POST 的内容,您就可以进入编程部分了。
编辑: 您可以加载页面的唯一方法是通过 HTTP GET(HttpWebRequest),您可以登录和选择/指定选项的唯一方法是通过 HTTP POST (HttpWebResponse),即如果服务器不使用某种 Web 界面( Web 服务或 WCF,这是完全不同的事情)
毕竟,当您实际收到响应时,您需要使用正则表达式或任何适合您需要的方式来解析它以获得所需的数据。
就excel而言。如果你想在你的应用程序中加载 excel 并对其进行操作 为此,Microsoft 提供了完整的 API:http://www.microsoft.com/download/en/details.aspx?DisplayLang=en&id=5124
关于c# - 登录网站并检索数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6777151/