标签归档:下载

Lofter图片搬家

图片已经能够下载了,很好~但是缺一步,那就是把文章中的图片链接换成本地连接。当然不能手动了,用PYTHON来做这件事。

代码大概是这样的。


我的想法是,把所有图片链接全部换成是very9s/lofter/*.png的链接形式。好在图片不是很多。到时候在服务器上就直接在根目录下放个lofter文件夹吧。
看,图片链接已经改了。
/////////////////////////////////////////////////////////////////////////////////////

嗯,搬家差不多可以进行了。现在只要再在一些个别的细节做一些调整就可以了。整体框架已完成。

Python下载Lofter图片

现在文章已经能够迁移到Hexo了。但是文章里面的图片链接依旧是LOFTER上的,所以也要把图片搬出来。

1-下载图片

在原来的程序基础上添加下载图片的代码。

很直接,很单纯。。。直接用urlopen然后write。可是才下载一张就被服务器无情地拒绝了。

2-伪装

我就这么裸奔的跑过去,当然被拒绝了。

查找python的官方文档,发现一句话。解决办法就在这里了。

headers should be a dictionary, and will be treated as if add_header() was called with each key and value as arguments. This is often used to “spoof” the User-Agent header, which is used by a browser to identify itself – some HTTP servers only allow requests coming from common browsers as opposed to scripts. For example, Mozilla Firefox may identify itself as “Mozilla/5.0 (X11; U; Linux i686) Gecko/20071127 Firefox/2.0.0.11”, while urllib‘s default user agent string is “Python-urllib/2.6” (on Python 2.6).

——

《urllib.request》

所以我要伪装成浏览器。所以修改代码:

通过添加header来实现


3-大功告成

终于可以快速的下载图片了。图片搬家问题也解决了一大半了。


oh~对了,关于解析博文,由于XML中保持的是HTML数据,所以博文中图片的链接,我是用Beautiful Soup 4.2.0来解析的。

下一步,就是修改XML文件,把博文中的图片链接换成自己的图片链接。

嗯~剩下的下次再来吧。