使用Javascript自动下载文件
对于一个拥有大量文档的公司网站,我正在编写一个JavaScript以自动方式下载这些文档 我所采用的方法是使用这些链接创建一个html文件,并在页面中添加一个javascript,该javascript将遍历这些链接并模拟单击 不幸的是,“点击”只发生在第一个链接上,但在下一个链接后停止使用Javascript自动下载文件,javascript,html,Javascript,Html,对于一个拥有大量文档的公司网站,我正在编写一个JavaScript以自动方式下载这些文档 我所采用的方法是使用这些链接创建一个html文件,并在页面中添加一个javascript,该javascript将遍历这些链接并模拟单击 不幸的是,“点击”只发生在第一个链接上,但在下一个链接后停止 var links=document.getElementsByTagName('a'); 对于(变量i=0;ianchor.click()) 只有一件重要的事情:应该允许您的客户机从服务器下载这些文件。你
var links=document.getElementsByTagName('a');
对于(变量i=0;i
等待第一次单击完成没有任何意义 你的想法就快到了。。。但是您忘记了一个属性
下载:
HTML:
<a download href="http://internal.corporateurl.com/filepath/file.pdf">Link 1</a>
JS:
const links = document.querySelectorAll('a')
links.forEach(anchor => anchor.click())
HTML:
JS:
const links=document.queryselectoral('a'))
links.forEach(anchor=>anchor.click())
只有一件重要的事情:应该允许您的客户机从服务器下载这些文件。你不能只把你在互联网上找到的pdf文件放进去
编辑:
为了说明我的最后一句话,这里有一个例子:
此链接指向我的域之外的PDF。因此,与其下载,不如在屏幕上打开:
<a href="https://www.cs.cmu.edu/afs/cs.cmu.edu/user/gchen/www/download/java/LearnJava.pdf" download>link</a>
这是指向我的项目的相对路径,因此它工作正常
<a href="/images/myw3schoolsimage.jpg" download>link</a>
供您尝试的参考:
干杯,我想,您需要等到第一次单击的请求完成。是否有理由使用浏览器JS而不是节点?在浏览器之外,从页面上的链接中批量保存文件将更加高效和愉快。除了缺少复杂的工具之外,没有其他特别的原因。什么是节点?我有权访问Excel VBA,我办公室的记事本。我不理解你的上一个笔记,请你重新措辞或澄清一下好吗?我一定会尝试你的解决方案。你想下载的文件应该托管在你的站点所在的同一个域中。如果不是这样,我想您需要进行一些额外的配置,以便在承载文件的服务器上使用它。您有比w3schools更好的资源吗?您所说的“更好的资源”是什么意思?你不信任他们吗?