Python备份离线静态站点方法是什么?,python离线,有时候想把一些不错的静态
Python备份离线静态站点方法是什么?,python离线,有时候想把一些不错的静态
有时候想把一些不错的静态站点的内容离线下来,然后制作成为Docset放在Dash里面便于管理查看。将站点,其实就是带有索引(一般是index.html)的html文件转换为docset格式这一步已经用python实现自动化了。剩下的问题就是如何离线静态站点。
目前主要有两种方法:
用wget下载资源,一般用 wget -r -p -k -np [site_root_path]命令;用SiteSucker下载。但是这两种方法都不是很完美,因为上面两种方法下载页面时,只下载: site_root_path以及子目录下的html文件,这样会导致一些引用的js脚本,css样式表以及图片等都下载不了。比如The Django Book 这个网站,如果用
wget -r -p -k -np http://djangobook.py3k.cn/2.0/
就无法下载到http://djangobook.py3k.cn/sitemedia/css/djangobook.css以及其它的一些资源,这就导致在Dash中查看时失去一些样式。
所以问题来了,有没有现成的傻瓜方法可以让我完美的备份静态站点?(完美就是指下载某个目录时,要下载它的所有子目录,并且也要选择性的下载要使用到的但不在该目录下的css、js以及图片文件。)
建议你可以试试这个命令:
wget -m -k (-H) http://www.example.com/
以前用过一个软件叫做整站下载器。
HTTRACK
看看这个可以不
http://www.jq-school.com/Show.aspx?id=258
几乎所有的笔记软件都有这个功能,比如印象笔记的剪藏,还有就是像360浏览器网页快照类似功能,也能帮你快速保存整个网站。
我经常遇到的麻烦是,有的时候并不需要下载整个页面,可能是页面的某个div,其他边栏顶栏都不需要。这个时候我通常会用正则或者字符串函数截取需要的部分,拼装之后写文件。css其实不是大问题,可以自己配,拼装的时候写好就可以。我一般都是先把原配的下载下来,手工组装出一个页面去调,不合适自己再写另外一个文件加上一些样式。另外不建议直接拿shellscript去爬,因为要处理的东西太复杂了,用py的http模块是个不错的选择。
坦白:多年前曾经盗版过 Teleport Ultra 用来扒离线站点,效果不错,相关css和js能够直接识别到,并能够无条件下载,或设定过滤条件(扩展名、文件大小等)部分下载
免费或开源方案目前仍在寻求中
teleportpro
编橙之家文章,
相关内容
- 写一个php框架怎么做到?,php框架做到,删了吧 我只是
- 请问Beautifulsoup抓取select标签中option文本方法是什么,
- Python运维方向基本工作内容是什么,python运维工作内容
- Python爬虫完成js页面内容抓取方案是怎么样的,pythonj
- Python字符串之间如何比较,Python字符串比较,远程版本号
- python访问嵌套内数据实现如何定义,python访问嵌套数据
- python ascii格式怎么生成utf-8文件,pythonutf-8,import codec
- Python哪个库可以解析js格式,python解析js格式,我想抓取
- Python判断某个值是是否在典中并反馈key怎么写源码,
- 菜鸟Python网络爬虫网页编码utf-8十六进制问题不解,p
评论关闭