![下载不在其发布网页中的文件](https://linux22.com/image/186755/%E4%B8%8B%E8%BD%BD%E4%B8%8D%E5%9C%A8%E5%85%B6%E5%8F%91%E5%B8%83%E7%BD%91%E9%A1%B5%E4%B8%AD%E7%9A%84%E6%96%87%E4%BB%B6.png)
我正在尝试从此网页下载所有文件:https://www.lezioni4all.com/ase/appunti 所以我使用“wget”命令,它不起作用,所以我做了一些研究,我发现在上面的网页上(当我单击我想要可视化的资源时)它会在新的网页中打开文档页面和路径类似于:http//something/resource/%10hi%10Ineedof%10thisresource
(如果您打开上面的链接并选择页面中的一个元素,例如“conflitti”,您将看到该项目有一种“预览”,然后当您单击底行时,资源将在新窗口中打开,其标题与您在主页上显示的标题相同,但名称中带有一些百分比,例如 %10、%20...)。
你知道我如何下载那些无法下载的文件,只需要输入它们发布的页面的网址吗?
我已经尝试过这些命令:
wget --no-clobber --convert-links --random-wait -r -p -E -e robots=off --no-parent -P ~/Desktop/ASE_lezioni4all https://www.lezioni4all.com/ase/appunti
wget --page-requisites -p --convert-links -P ~/Desktop/ASE_lezioni4all https://www.lezioni4all.com/ase/appunti
另外,我只收到在互联网上打开白色窗口的空白文件。
答案1
PDF URL 嵌入在 JavaScriptonclick
属性中。你可以grep
:
wget -qO- https://www.lezioni4all.com/ase/appunti |
grep -o "https://www\.lezioni4all\.com/files/[^']*\.pdf"
您可以使用 no-clobber 选项下载它们-nc
(因为每个文档都链接两次)并且-i
:
wget -nc -P ~/Desktop/ASE_lezioni4all -i <(
wget -qO- https://www.lezioni4all.com/ase/appunti |
grep -o "https://www\.lezioni4all\.com/files/[^']*\.pdf")