我尝试使用C#自动执行从以下网站下载文件的过程。但问题是网站需要以html对话框的形式提示登录。我似乎无法确定以编程方式输入用户名/密码的方法。试过张贴他们 - 但没有快乐。有什么想法吗?
https://transparency.entsoe.eu/
提前致谢
答案 0 :(得分:0)
您应该能够使用POST请求登录,然后从服务器获取您是否已登录的响应。我找到了这行代码,请确保您按照如何执行POST来执行POST HTML。
<form id="login-form" method="POST" action="/j_spring_security_check" novalidate="novalidate">
当然,您必须找到“ j_spring_security_check()”函数所在的位置,以便在未发布到同一网址时查找正在执行POST的位置。从我在HTML中可以看出,POST请求的目标URL可能存储在隐藏字段中:
<input type="hidden" name="url" id="target-url" value="/dashboard/show">
确保您尝试将帖子设置为 / dashbord / show
的相对路径此外,请确保在发出POST请求时设置变量。我在HTML中注意到您必须设置以下文字变量:“密码”和“电子邮件”。
我会帮你找到这个功能的位置,但是有超过15个javascript文件需要查看,有了这个,我留给你。
答案 1 :(得分:0)
如果它是一个网站,我使用NetworkCredential
完成了此操作。设置Http请求并添加凭据:
request.Credentials = new NetworkCredential(Username, Password);
更多阅读:
https://msdn.microsoft.com/en-us/library/system.net.networkcredential%28v=vs.110%29.aspx