兄弟们,大批量生成 Excel,用什么技术方案? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lx271896700
V2EX    问与答

兄弟们,大批量生成 Excel,用什么技术方案?

  •  
  •   lx271896700 2023-07-05 16:36:54 +08:00 1698 次点击
    这是一个创建于 831 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我每个月,要把上万张网络图片,分别整理进大约 100 个 excel 里面。

    excel 不支持嵌入网络图片,所以我要一边下载图片,一边生成 excel 。

    目前是用网页本地运行 exceljs 做的。

    感觉速度有点慢,每次要 3 个小时左右,才能处理完全部的图片。

    兄弟们有没有更好的技术方案推荐?

    18 条回复    2023-07-06 08:57:17 +08:00
    basefas
        1
    basefas  
       2023-07-05 16:41:16 +08:00
    先把所有图片下载下来,分好类(比如文件夹),然后再生成 Excel ,可以先考虑用 python 试试
    wliansheng
        2
    wliansheng  
       2023-07-05 16:45:28 +08:00
    写个 py 脚本就行了
    horizon
        3
    horizon  
       2023-07-05 16:50:50 +08:00
    开销不就在下载图片么。。
    imicksoft
        4
    imicksoft  
       2023-07-05 16:55:59 +08:00
    aardio 中 inet.http 库可以下载支持外链的图片,com.excel 可以操作 excel 的 com 对象
    lx271896700
        5
    lx271896700  
    OP
       2023-07-05 16:59:15 +08:00
    @imicksoft 好,谢谢,我了解下
    lx271896700
        6
    lx271896700  
    OP
       2023-07-05 17:00:24 +08:00
    @horizon 是的,主要时间花在下载图片上,不过我每个 excel 里面的 sheet 数量也很多,如果能缩减生成 excel 的时间,也是不错的。
    lx271896700
        7
    lx271896700  
    OP
       2023-07-05 17:02:58 +08:00
    @basefas 是的,先把图片全下载到本地。然后用本地图片生成 excel ,会快很多。不过有点小尴尬的是,我用的是阿里的 oss 存储图片,且用到了 oss 是在线水印。如果用阿里提供的工具下载图片,会丢失水印。如果用批量下载带水印的链接,会麻烦一点。不过好像也只能如此了。
    lululau
        8
    lululau  
       2023-07-05 17:18:23 +08:00
    题目就错了,用目录分好类直接打个 zip 包就可以了,为啥非要弄成 excel
    horizon
        9
    horizon  
       2023-07-05 17:59:11 +08:00
    @lx271896700 #7
    水印不是很好加的嘛。。自己加呗
    SenLief
        10
    SenLief  
       2023-07-05 18:10:02 +08:00 via iPhone
    Excel 我记得是支持下载图片到本地的啊。
    lx271896700
        11
    lx271896700  
    OP
       2023-07-05 18:58:58 +08:00
    @horizon #9 每张水印都不一样的,而且偶尔还要二次修改水印
    lx271896700
        12
    lx271896700  
    OP
       2023-07-05 18:59:47 +08:00
    @lululau 客户要求的,那些老古董只认 excel ,我用在线版的表格给他们,他们不要。
    lx271896700
        13
    lx271896700  
    OP
       2023-07-05 19:00:22 +08:00
    @SenLief 道友,这话是何意?
    TimePPT
        14
    TimePPT  
    PRO
       2023-07-05 19:05:30 +08:00
    SenLief
        15
    SenLief  
       2023-07-05 19:19:16 +08:00
    @lx271896700 我记得 excel 是可以把图片链接转为图片的啊
    614109
        16
    614109  
       2023-07-05 19:20:12 +08:00
    如果是 Office 365 的话,现在 Excel 是自带 “image” 这个函数的,https://support.microsoft.com/en-us/office/image-function-7e112975-5e52-4f2a-b9da-1d913d51f5d5
    jifengg
        17
    jifengg  
       2023-07-06 08:42:54 +08:00   2
    楼主,建议先测试一下,3 小时里,下载图片耗时多少,生成 excel 耗时多少,这样才好针对性优化。
    别搞半天怎么优化 excel ,结果只节省了几十秒。
    lsk569937453
        18
    lsk569937453  
       2023-07-06 08:57:17 +08:00
    写个程序自动化,自动话从阿里 oss 下载图片然后写入 excel ,任务完成后。最后自己打开 excel 校验就行了。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1398 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms UTC 16:59 PVG 00:59 LAX 09:59 JFK 12:59
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86