我需要获取从aspx站点生成的pdf文件 .
Backstory :
我想从一个网站获得schedueles,我已成功获取包含参数的scheduele的url . 如果您关注该网址,您将看到一个PDF流,由该网站使用给定参数创建 .
http://www.novasoftware.se/ImgGen/schedulegenerator.aspx?format=pdf&schoolid=57240/sv-se&type=1&id=%7bD8920398-FA90-4960-BD47-69A8EFF7204D%7d&period=&week=38&mode=0&printer=1&colors= 2头= 1&时钟= 1&脚= 1&天= 0&宽度= 2480&高度= 3507&计数= 1&解密= 0
此URL是网站用于获取相应的scheduele并将其显示为pdf的URL . 由于理论上它不是PDF文件,因此我不能将其作为一个文件下载:
Dim Downloader As New WebClient
Downloader.DownloadFile(URL, fileName)
我也不能使用...将内容下载为字符串...
Dim Downloader As New WebClient
Dim Result As String = Downloader.DownloadString(URL)
...因为缺少参数会导致500服务器错误 .
显示文件/流/文档或其真实名称的唯一方法是通过浏览器访问给定的URL . 鉴于此,我试图通过WebBrowser控件获取PDF . 但由于它“无法显示XML页面”(导航到scheduele URL时显示错误)我也无法使用该方法 .
所以我的问题是, How do I download this data as a PDF or How do I get this data as a Stream that i can read with StreamReader?
Sidenotes:
该页面不使用其他客户端连接,因此我无法回溯它 . (我使用Fiddler2来跟踪所有连接)
使用Fiddler,我可以告诉你的网址SomethingSomething.com/Something.aspx生成一个PDF并显示它 . 生成文档的前几行(通过Fiddler)
%PDF-1.4% %%WPDF由WPCubed GmbH提供V3.54x [0] %% 1 0 obj <>
关于这个网站,我可以从Fiddler获得更多信息,所以如果你需要它可以自己尝试或者让我在这里添加信息 .
1 回答
使用下面的代码将文件下载到内存流: