下载一个html网页后,该网页上会链接与显示相关的图片、css、js比如<img src="./a.jpg" /><script link='b.js' />缺少这些文件,网页将无法在本地显示出该有的效果。编程该怎么样获得这些图片,css,js的真实地址url(考虑相对路径)?便于一起下载下来?请说一些切实可行的算法思路...分给最简易可行者注意,是“编程获得",而不是用应用软件获得编程语言不限。。
直接文件另存为,应该就可以自动下载图片和JS CSS了吧 追问 题目问“编程获得” 追答 额、、编程获得呀。。这个就比较复杂了需要先获取源码->使用正则获取地址->转换为URL->在获取JS或者图片CSS保存->替换原来的地址->将最后新的源码保存这也是一般的数据采集思路,网上多的是图片可以保存的,JS、CSS一起保存的没见过,但是原理一样的。
用正则表达式分析出像图片外链css、js等元素然后判断连接的类型是相对路径还是绝对路径,绝对路径直接下载文件,相对路径根据当前页面取得真是uri并下载。还有就是在保存文件是主要文件路径,让保存的html真正连接到了现在的文件。我的一点想法不知道能不能帮到你。
在网页的<head>后面加上<base href="原网站的域名"></base>就可以完整的显示出来,如果要下载的话,就是用正则匹配到每一个SRC,LINK之类的.然后[原网站的域名加在前面],当然带http的这种绝对路径不用加,然后用程序下载就行了.不过css里的图片就需要和CSS的路径对应了