Skip to content

Commit

Permalink
update list generator
Browse files Browse the repository at this point in the history
  • Loading branch information
Suzhou65 committed Apr 17, 2024
1 parent 801b3ed commit 98c1d51
Show file tree
Hide file tree
Showing 5 changed files with 74 additions and 30 deletions.
Binary file removed lib_img/github_meme_crazy_delphin.gif
Binary file not shown.
Binary file added lib_img/github_meme_crazy_delphin.webp
Binary file not shown.
29 changes: 0 additions & 29 deletions lib_img/index_list.py

This file was deleted.

5 changes: 4 additions & 1 deletion lib_img/lib_img.csv
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
List generate date: 2024-04-17
github_apcupsd_voltage_recorder_multimon.webp
github_apcupsd_voltage_recorder_raspbian_apache_cgi.webp
github_apcupsd_voltage_recorder_upsfstats.webp
Expand Down Expand Up @@ -76,7 +77,9 @@ github_gpx_newzealand.webp
github_gpx_southafrica.webp
github_kicad_apple_30pin_male_vertical_footprint.webp
github_kicad_apple_30pin_male_vertical_schematic.webp
github_meme_crazy_delphin.gif
github_kicad_apple_dock_eda.webp
github_kicad_apple_dock_footprint.webp
github_meme_crazy_delphin.webp
github_meme_this_is_fine.webp
github_pixmicat_colorsystem_change.webp
github_pixmicat_colorsystem_design.webp
Expand Down
70 changes: 70 additions & 0 deletions lib_img/script_imagelist.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# -*- coding: utf-8 -*-
import subprocess
import csv
import datetime
import sys

# Using ls command get list output
def AskList(FolderDirectory=None):
# Ask list
if FolderDirectory is None:
ListAsking = subprocess.Popen(["ls","-ls"],stdout=subprocess.PIPE)
elif FolderDirectory is not None:
ListAsking = subprocess.Popen(["ls","-ls",FolderDirectory],stdout=subprocess.PIPE)
# AWK filter
AWKFilter = ["awk","{print $10}"]
FilterOutput = subprocess.Popen(AWKFilter,stdin=ListAsking.stdout,stdout=subprocess.PIPE)
# Dump into cache
BytesResult = FilterOutput.communicate()[0]
# Decode
DecodeResult = BytesResult.decode("utf-8")
ListResult = DecodeResult.split("\n")
# Remove unmatch
MatchFile = filter(FileCheck,ListResult)
return list(MatchFile)

# Check file name
def FileCheck(ListResult):
# File extension "webp" setting as configuration.
if ListResult.find(".webp") != (-1):
return True
elif ListResult.find(".webp") == (-1):
return False

# Saving list to CSV
def ImageFolderList(FolderList, FolderDirectory=None):
# File path
if FolderDirectory is None:
ListDirectory = ("lib_img.csv")
pass
elif FolderDirectory is not None:
ListDirectory = FolderDirectory + ("/") + ("lib_img.csv")
# Adding update time
with open(ListDirectory,mode="w",newline="",encoding="utf-8") as DataTape:
Recording=csv.writer(DataTape)
Today = datetime.datetime.now()
Updateime = Today.strftime("%Y-%m-%d")
Recording.writerow([f"List generate date: {Updateime}"])
DataTape.close()
# Generate file list
with open(ListDirectory,mode="a",newline="",encoding="utf-8") as DataTape:
Recording=csv.writer(DataTape)
for Files in FolderList:
Recording.writerow([Files])
DataTape.close()
return ListDirectory

# Runtime
try:
# Modify "FolderDirectory" configuration
FolderDirectory = None
# Get list, Saving to CSV file
FolderList = AskList(FolderDirectory)
Result = ImageFolderList(FolderList, FolderDirectory)
print (f"File output: {Result}")
sys.exit(0)
except Exception as ErrorStatus:
print(f"Error status: {ErrorStatus}")
sys.exit(0)

# 2024.04.17

0 comments on commit 98c1d51

Please sign in to comment.