Я хочу создать несколько сертификатов, только имя, измененное на нем в Power Point, и данные имени в листе Excel, используя python pptx и pandas - PullRequest
0 голосов
/ 20 марта 2020

Моя задача - создать несколько одинаковых сертификатов, только имя изменено на нем, и у меня есть этот список имен в формате Excel , файл demo.pptx содержит только один слайд сертификата и имеет 3 текстовых поля. просто хочу заменить текстовые поля моими данными Excel и создать новые несколько слайдов в новой PowerPoint.

from pptx import Presentation
import pandas as pd

dataframe = pd.read_excel('username.xlsx')



prs = Presentation('C:\\Users\\xyz\\Desktop\\demo.pptx')
search_str_username = 'User name'
search_str_formonth = 'Month'
search_str_lpm = 'Manager'

users = []
for i in dataframe['Nominee Name']:
    users.append(i)

Manager = []
for i in dataframe['LPM']:
    Manager.append(i)

Month = []
for i in dataframe['Period']:
    Month.append(i)

x = len(users)

for i in range(x):
    for slide in prs.slides:
        for shape in slide.shapes:
            if shape.has_text_frame:
                shape.text = shape.text.replace(search_str_username, users[i])
                shape.text = shape.text.replace(search_str_formonth, Month[i])
                shape.text = shape.text.replace(search_str_lpm, Manager[i])



prs.save('C:\\Users\\suraj\\Desktop\\op.pptx')
...