我使用WebClient从直接网址下载文件,例如http://www.xyz.com/somefile.zip或http://www.xyz.com/somefile.pdf。
但是有页面,他们说“你的下载应该自动启动。如果没有点击这里”。我如何以编程方式下载文件?
答案 0 :(得分:3)
应该有一个工作,检查源文件,看看它是ajax还是只是一些简单的javascript,几秒后使链接可用。在后一种情况下(更常见)只需触发链接即可。如果它是异步的,请查看链接是否包含某些唯一标识符或是否存在模式。如果你能找到这种模式,宾果!否则......你能在那里做的不多......
答案 1 :(得分:0)
通常,执行此类操作的网站会在其标记中注入隐藏的IFRAME,其中包含直接指向目标文件的URL。然后,您的浏览器会在该帧中下载文件,触发下载通知,而无需导航顶层框架。
您可以使用像Fiddler这样的工具来观察此行为,并查看生成文件下载的“true”URL。
然而,正如@climbage指出的那样,每个网站的工作方式不同,您将无法概括任何给定网站上发生的情况,以致您的代码可以与所有其他网站相媲美。