我正在尝试使用C#WebClient从以下uri获取csv文件。C#WebClient - 从URI而不是CSV获取HTML
var copUri ="http://obieebr.banrep.gov.co/analytics/saw.dll?Go&Path=%2fshared%2fSeries%20Estad%c3%adsticas_T%2f1.%20IBR%2f1.1.IBR_CSV_XML_ultimos_datos&download_type=csv&NQUser=publico&NQPassword=publico"
var client = new WebClient();
var content = client.DownloadString(copUri);
当我在我的浏览器中尝试它时,我得到了csv文件,但上面的代码正在返回验证html文件。如何通过这个html响应来获取csv文件?
您是否尝试使用WebClient.DownloadFile()方法? – Redouane
看起来像最初的打击,它设置了一些饼干。您需要使用支持cookie的客户端,访问URI,然后再次访问相同的URI。只有第二次,它会给你CSV。 – Kyle
您正在从Oracle BI中下载报告,这是非常沉重的会话感知,并且像@ Kyle指出的那样在第一个请求中设置了一些会话cookie,例如“ORA_BIPS_LBINFO”和“ORA_BIPS_NQID”。我不熟悉Oracle BI,但也许你可以在https://stackoverflow.com/questions/tagged/obiee中提出这个问题。 –