python获取网页canvas图片并添加至excel中

这篇博客介绍了如何利用Python从网页上的canvas元素中获取图片,并将其以base64编码保存,随后解码并添加到Excel文档中。通过openpyxl库创建Excel文件,并展示图片如何以A1为起点粘贴到表格中,但图片并不局限于A1单元格。
摘要由CSDN通过智能技术生成

canvas是目前主要流行的网页图片制作元素,以下图为例,图片元素中仅包含canvas的画布信息,无法得到其中具体的数据。
此处介绍如何保存图片,想得到具体数据可查看主页另一篇文章。请添加图片描述可以先将图片信息保存为base64格式数据信息,再解码为byte形式保存至计算机中。

js = f'''return document.getElementsByTagName("canvas")[{
     0}].toDataURL("image/png");'''#数字表示第几个canvas
base64str = driver.execute_script(js
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: import tkinter as tk from tkinter import filedialog from PIL import ImageTk, Image root = tk.Tk() canvas = tk.Canvas(root, width = 300, height = 300) canvas.pack() # 从excel某个单元格读取图片,并显示file_path = filedialog.askopenfilename() image = ImageTk.PhotoImage(Image.open(file_path)) canvas.create_image(20, 20, anchor=tk.NW, image=image) root.mainloop() ### 回答2: 使用Python编写一个GUI程序可以读取Excel的某个单元格内的图片,并显示在窗口。以下是一个示例代码: ```python import tkinter as tk from PIL import ImageTk, Image import openpyxl # 创建主窗口 root = tk.Tk() # 设置窗口标题 root.title("读取Excel图片") # 设置窗口大小 root.geometry("500x500") # 打开Excel文件 wb = openpyxl.load_workbook('test.xlsx') # 获取第一个工作表 sheet = wb['Sheet1'] # 获取指定单元格内的图片路径 image_path = sheet['A1'].value # 打开图片 img = Image.open(image_path) # 调整图片大小 img = img.resize((400, 400)) # 将图片转换为Tkinter可用的格式 img_tk = ImageTk.PhotoImage(img) # 创建一个标签,并将图片显示在标签 label = tk.Label(root, image=img_tk) label.pack() # 运行主程序 root.mainloop() ``` 在这个示例代码,首先使用openpyxl库打开一个Excel文件,并选择第一个工作表。然后,获取指定单元格(在这里是A1)内的图片路径。接着,使用PIL库打开图片,并进行大小调整。最后,将图片转换为Tkinter可用的格式,并将其显示在创建的标签。 需要注意的是,此程序需要安装`tkinter`和`openpyxl`库,并将Excel文件图片路径存储在A1单元格。并将代码的`test.xlsx`替换为实际的Excel文件路径。 ### 回答3: 要实现从Excel某个单元格读取图片并在GUI显示,可以使用Python的`Pandas`库来读取Excel文件,并使用`Tkinter`库创建GUI界面。 首先,确保已经安装了`Pandas`和`Tkinter`库。可以使用以下命令安装: ``` pip install pandas pip install tkinter ``` 接下来,可以使用如下代码实现功能: ```python import pandas as pd from tkinter import Tk, Label from PIL import Image, ImageTk # 读取Excel文件 df = pd.read_excel('excel文件路径', sheet_name='工作表名') # 获取单元格图片路径 image_path = df['图片列名'][0] # 这里假设图片路径在第一行的某个单元格 # 创建GUI窗口 root = Tk() # 加载图片并显示在GUI image = Image.open(image_path) photo = ImageTk.PhotoImage(image) label = Label(root, image=photo) label.image = photo # 防止图片被垃圾回收 label.pack() # 运行GUI循环 root.mainloop() ``` 需要将代码的`excel文件路径`替换为你的Excel文件的路径,`工作表名`替换为你要读取的工作表的名称,`图片列名`替换为包含图片路径的列的名称。 以上代码会创建一个GUI窗口,并在其显示从Excel读取到的图片。请注意,图片的路径需要是有效的路径,包括文件名和扩展名。 这是一个简单的示例,你还可以根据需要对GUI进行更多的定制,例如添加按钮来选择不同的Excel文件、单元格等。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值