用python在excel表格中加入超链接图片

import os
import openpyxl # 处理xlsx文件模块

if name == “main”:
fileName = ‘./海山数据信息表.xlsx’ # xlsx文件相对路径
filePath = ‘./每个类别图片/’ # 图片所在文件夹路径
wb = openpyxl.load_workbook(fileName) # 加载表格
sheets = wb.worksheets # 读取表格内容
sheet1 = sheets[0] # 读取第一个表格
col1 = [] # 存放表格第一列内容
for col in sheet1[‘A’]: # 遍历表格第一列内容
if col.value != None:
col1.append(col.value)

lists = os.listdir(filePath) # 读取图片名称
ws = wb.active # 激活
for l in lists: # 遍历存放图片名称的数组
if l[1:5] in col1: # 找到图片名对应的列表标签
i = int(col1.index(l[1:5])) + 1 # 用index()获取元素下标
path = os.path.join(filePath, l)
ws.cell(i, 1).value = (‘=HYPERLINK(“{}”,“{}”)’.format(path, l[1:5])) # 以超链接方式写入表格单元
wb.save(fileName) # 一定要保存表格

Python,你可以使用pandas库读取Excel文件,并结合requests库来下载URL指向的图片。以下是一个简单的步骤说明: 1. **安装所需库**: 首先,需要安装`pandas`, `openpyxl`(用于读取Excel),以及`beautifulsoup4`(如果Excel有HTML表格,用于解析超链接)和`requests`库。运行以下命令安装它们: ```bash pip install pandas openpyxl beautifulsoup4 requests ``` 2. **读取Excel数据**: 使用pandas的`read_excel`函数Excel文件: ```python import pandas as pd df = pd.read_excel('your_file.xlsx') ``` 3. **提取图片链接**: - 如果链接直接在单元格,可以直接遍历DataFrame获取链接列。 - 如果链接藏在HTML或特定格式的单元格里,可以使用BeautifulSoup解析: ```python from bs4 import BeautifulSoup def extract_links(cell): if isinstance(cell, str) and 'http' in cell: return [cell] elif isinstance(cell, BeautifulSoup): return [img['src'] for img in cell.find_all('img')] df['image_urls'] = df['Link Column'].apply(extract_links) ``` 4. **下载图片**: 使用`requests.get`下载图片并保存到本地: ```python import os def download_image(url, save_dir='images'): response = requests.get(url) file_name = url.split('/')[-1] path = os.path.join(save_dir, file_name) with open(path, 'wb') as f: f.write(response.content) image_save_path = 'downloaded_images' os.makedirs(image_save_path, exist_ok=True) df['image_urls'].apply(download_image, args=(image_save_path,)) ``` 5. **处理异常**: 可能会遇到一些请求失败的情况,可以加入适当的错误处理。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值