python将表格展示的数据生成图片

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python将表格展示的数据生成图片相关的知识,希望对你有一定的参考价值。

参考技术A 最近有一个需求,在界面对表格进行自动截图,然后将图片存起来

第一种: selenium +chromedirver + pillow
使用自动化工具,网页截图, 通过元素定位到具体位置,pillow进行裁剪得出最理想结果,此方案还是存在很大误差,因为表格数据数量非固定的,计算误差很大,难以精准

第二种: prettytable + pillow
通过prettytable将数据生成简单表格布局,通过pillow 生成图片,这个方案简单容易,但是表格样式过于丑陋,暂不考虑

第三种: html-table + imgkit
通过html-table将数据生成带样式的html文件,然后使用imgkit 转换成图片,该方案是目前最理想的

1、环境安装

2、demo演示

imgkit官方文档: https://github.com/jarrekk/imgkit

excel-to-json(将excel表格数据展示到页面中)

  今天,老大给我提了一个需求,他需要将爬虫爬出的数据展示到页面上,因为大多数都是图片数据,所以我的第一反应是循环拼字符串

  但是,老大给我的数据都是存在excel表格中的,所以需要将excel表格转化为字符串。找了很多方法,都不合适,最后找到一个NPM的包叫做excel-to-json的包,现在总结一下。

  首先  npm install excel-to-json ,然后配置package.json,

  package.json配置如下

  

{
    "name": "abc",
    "version": "0.0.0",
    "private": true,
    "scripts": {
        "start": "node ./bin/www"
    },
    "dependencies": {
        "xls-to-json": "*"
    }
}

  新建一个a.js的文件,代码配置如下:

 

node_xj = require("xls-to-json");
node_xj({
    input: "test.xlsx",
    output: "output.json"

}, function(err, result) {
    if (err) {
        console.error(err);
    } else {
        console.log(result);
    }
});

  因为表格文件是xlsx,所以在上面改了后缀,输出的json文件直接到根目录下,

  再用node运行一下a.js文件,最后成功得到一个json文件。大功告成

  这里注意一下: 这个包只会转化表格中有表头的数据,也就是说如果表格中某一列没有表格,他就不会转化。

  拿到json数据后,就可以直接循环拼字符串然后成功展示!

以上是关于python将表格展示的数据生成图片的主要内容,如果未能解决你的问题,请参考以下文章

图片获取太麻烦?python爬虫实战:百度百万级图片采集

layui数据表格(一:基础篇,数据展示分页组件表格内嵌表单和图片)

python使用fpdf生成发票格式的pdf文件包含:文字图片logo表格条形码等;

Python实现PDF扫描件生成DOCX或EXCEL功能

excel表格怎么生成图片格式

python-尝试将Excel文件保存为图片并加上水印