我感觉python不能直接处理svg格式,所以想把它转化为png数据在进行处理。
下面是这几天搞的结果:
1.找插件
昨天搞了一天,把svg转化为png格式,网上有专门的python插件,百度搜一下很多。
但是装好后,发现有一个包已知报错。
dlopen() failed to load a library: cairo / cairo-2
网上也有解决方案:如https://blog.youkuaiyun.com/hacklyc/article/details/77101965(里面GTK+链接失效了,自己百度GTK+就好了)
说是windows的原因,不知道linux会不会报错。
但是不知道是我不会装还是什么,反正搞了好久没弄好。差点想用linux系统再装一边了。
2.自动截图
晚上回寝室路上,想到,可不可以用浏览器打开,然后截图保存成图像格式。
搜了一下之前有相关的教程。如下(亲测有用)
https://www.jb51.net/article/140366.htm
我的核心代码如下:在上面的基础上修改了一下。
for i in range(high):
brower=webdriver.PhantomJS()
url=df.loc[i]['ImageURL']
brower.get(url)
brower.maximize_window()
brower.save_screenshot('D:\Always\Machine_Learning_Work/%s.jpeg'%i)
brower.close()
下载在自动下载图片,偷闲来写个博客。
3.其他
我看到PhantomJS 官网有这一段,里面提到转换SVG,我想可能是因为SVG直接转png不太简单吧,网上关于svg到png的文章也不多。
Since PhantomJS is using WebKit, a real layout and rendering engine, it can capture a web page as a screenshot. Because PhantomJS can render anything on the web page, it can be used to convert HTML content styled with CSS but also SVG, images and Canvas elements.
gg
提前批8.1号截止

SVG转PNG实践
本文分享了将SVG格式文件转换为PNG格式的两种方法。一种是使用Python插件,但遇到了安装问题;另一种是通过浏览器自动截图实现转换,提供了具体代码示例。
1547

被折叠的 条评论
为什么被折叠?



