我尝试下载网址“https://www.ep-infonet.de/apps/de-DE?layout=v6#/app/bestellbestand_index/de-DE?tabelle=fakturen&phase=fakturen”的HTML结果。 我的命令是:
"wget --load-cookies cookies.txt "https://www.ep-infonet.de/apps/de-DE?layout=v6#/app/bestellbestand_index/de-DE?tabelle=fakturen&phase=fakturen"
但如果我运行它,它只保存这个文件:“de-DE?layout = v6.2”。我想知道它是否削减了#因为它意味着在bash中发表评论?如何让wget正确加载URL? (我想加载的网站只能通过我得到的cookies.txt访问,希望你无论如何都可以暂停我)
答案 0 :(得分:0)
超过#
的网址中的内容(即片段标识符)不会发送到请求中的网络服务器。它由浏览器解释,或者是要跳转到页面中的元素ID,或者是Javascript代码使用的元素ID。 (在这种情况下,它可能是后者。)
您尝试下载的页面可能使用Javascript动态加载和更新内容。您无法单独使用wget
下载它。
答案 1 :(得分:0)
您是否检查了文件的内容 de-DE?layout = v6.2?我没有 cookies.txt ,但是当我输入在 wget 或我的浏览器中的网址,并查看源内容是否相同。
我通常会在带有大量特殊字符的大型网址上找到wget,但是这样做但内容是正确的。对于这些长网址,我只习惯添加 -O标志并自行设置文件名。
wget --load-cookies cookies.txt "https://www.ep-infonet.de/apps/de-DE?layout=v6#/app/bestellbestand_index/de-DE?tabelle=fakturen&phase=fakturen" -O myfile.txt
答案 2 :(得分:-1)
我自己找到了答案。我不得不使用URL编码并将#替换为%23。