||
前几天在批量下载一些化学期刊的文章,发现有个链接的文件不能下载:文件名末尾是%4B.pdf, 文件明明在那里,下载的页面上指向这个文件(索引的文件)的链接地址也是 XXXX%4B.pdf, 可是IDM 下载的时候反馈就是找不到文件。同时我在Chrome上直接双击这个文件,也无法正常下载或打开PDF。
我知道%4B是在互联网上传递文件中的+号时转换后的编码,按理说建立文件的时候,要将%4B转换成+号才正常,但不知什么原因,服务器上文件名里面没有置换,依然是%4B,但文件名里面如果有%4B,下载的链接URL则应该当成原文再进行转换才行。
我搜索了一下URL编码的线上工具,%符号本身URL编码之后,应该变成%25。因此下载链接中的文件名%4B这几个字样,我在IDM中手动将其替换成%254B,也就是4B字样不需要变换,但百分号本身%应变换成转义形式的%25(后面这里%就是编码后的转义符号),如此手动修改之后再继续下载,文件就正常的搞下来了。
问题解决。
为什么在Chrome里面直接双击不能打开呢?也是因为文件名的路径没有变换,发送给服务器的地址未经变换,因此服务器找不到正确的文件(URL形式应该是XXX%254B.pdf,发送过去的是%4B.pdf), 因此找不到也就打不开了。
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2025-1-7 20:09
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社