Files
Gainsight/Scripts/Auto_Scrape_Screenshots/combine_to_pdf.py

71 lines
1.9 KiB
Python
Executable File

from PIL import Image
import glob
import re
import os
from datetime import date
currentdir = "/Users/normrasmussen/Documents/Work/Scripts/Auto_Scrape_Screenshots/"
def find_pictures(currentdir):
files = []
listfiles = glob.glob(currentdir + "*.png")
for file in listfiles:
files.append(os.path.basename(file))
# Now file will only show the file name, not the entire path
split_resources(files, currentdir)
def split_resources(files, currentdir):
try:
resource_title = files[0][:-6]
# resource_title = resource_title[:-6]
files.sort()
new_list = []
for file in files:
if resource_title in file:
new_list.append(file)
for item in new_list:
files.remove(item)
split_resources(files, currentdir)
process_pictures(new_list, resource_title, currentdir)
except IndexError as e:
print(e)
finally:
pass
def process_pictures(new_list, resource_title, currentdir):
resource_title = re.sub(r'[?]', "", resource_title)
today = date.today()
today = today.strftime("%m.%d.%Y")
image_list = []
resource = Image.open(new_list[0])
resource = resource.convert("RGB")
for picture in new_list[1:]:
image = Image.open(picture)
converted = image.convert("RGB")
image_list.append(converted)
# image_list.append(image)
resource.save(
currentdir + f"PDFs/{resource_title}_{today}.pdf",
save_all=True,
append_images=image_list,
)
def delete_originals(currentdir):
path = glob.glob(currentdir + "*.png")
for file in path:
try:
os.remove(file)
except TypeError as e:
print("Error!")
print(e)
finally:
print("All Done")
if __name__ == "__main__":
find_pictures(currentdir)
delete_originals(currentdir)