我在我的项目中有一个请求,我需要登录到外部网站并需要从网站下载文件。除登录用户名/密码外,我没有任何访问权限。有什么方法可以使用C#来实现这个功能。谢谢!导航并从外部网站下载文件
回答
您可以使用WebBrowser控件和WATIN库一起浏览网站并单击下载按钮。
WebBrowser控件有一个 “下载文件” 事件,您可以处理
这取决于类型的网站和身份验证:
1)使用WebClient类
WebClient wc = new WebClient();
wc.Credentials = new NetworkCredential(username, password);
wc.DownloadFile(url, "c:\\");
2)如果第一没有工作,你可以使用WebBrowser控件
HtmlElement ele = webBrowser1.Document.GetElementById("email");
if (ele != null)
ele.InnerText = "username";
ele = webBrowser1.Document.GetElementById("pass");
if (ele != null)
ele.InnerText = "pass";
ele = webBrowser1.Document.GetElementById("Login");
if (ele != null)
ele.InvokeMember("click");
您可以通过[UploadValues](http://msdn.microsoft.com/en-us/library/9w7b4fz7.aspx)通过WebClient发布数值。另请参阅[如何使用C#中的WebClient将数据发布到特定的URL](http ://stackoverflow.com/q/5401501/119477) –
Thanq,它的工作。 –
实现它如果您可以手动执行此操作,则可以使用C#或任何其他支持HTTP请求的语言以编程方式执行此操作。所有你需要的是:
找出如何正确认证服务器。完成此操作后,您将获得身份验证令牌和与此令牌关联的会话。然后,您将该令牌附加到服务器的所有后续请求中。
找出发送哪个请求以获取该特定资源。我会假设它是一个特定URL的GET请求。如果手动执行,使用Fiddler来检查发送了哪些请求。
- 1. 从外部网站下载XML
- 2. AsyncTask无法从外部网站下载文件
- 3. 从网站下载文件
- 4. 从网站下载文件
- 5. 登录网站并下载文件?
- 6. 为什么jquery .load()从外部网站加载文本文件?
- 7. 从网站下载pdf文件并在下载后更改文件名
- 8. 从外部网站
- 9. 从外部网站
- 10. 从外部网站
- 11. 从外部网站
- 12. 从网站下载文件解析
- 13. 从网站下载音频文件
- 14. 从网站下载CSV文件
- 15. 从网站下载文件PHP
- 16. 从网站下载临时文件
- 17. 从多语言网站下载文件
- 18. 从网站自动下载XLS文件
- 19. SILVERLIGHT。如何从网站下载文件
- 20. 使用Python从网站下载文件
- 21. 从网站下载某个文件
- 22. 从Arduino网站下载强制文件
- 23. 图书馆从网站下载文件?
- 24. C#从网站下载.swf文件
- 25. 从ASP.NET MVC 2网站下载文件
- 26. 使用python从网站下载文件
- 27. 从webservice下载文件 - 在ASP.NET网站
- 28. 从多个网站下载文件。
- 29. 从各种网站下载apk文件
- 30. 如何从C#网站下载文件?
是的有很多种方法。但是你对我们有什么期望?为你写吗? –
嗨,我不希望你写代码,只需要建议如何实现这一目标。在这个需求中,我需要打开银行网站并使用uname和pwd登录到网站,然后通过下载文件点击site.till上的一个按钮。现在,这是使用基于协调的文本框和按钮的脚本语言编写的。但是这并不像我们需要在每次布局更改时更改脚本那样高效。 –