98 lines
2.5 KiB
Python
98 lines
2.5 KiB
Python
import os
|
|
import time
|
|
import re
|
|
import fnmatch
|
|
|
|
def check_download_exists_matching_url_version_one(url):
|
|
|
|
print ("enter > downloads > exist check > version 1")
|
|
|
|
match = re.search(r"https://sullygnome.com/channel/([^/]+)/(\d+)([a-z]+)/games", url.lower())
|
|
|
|
if not match:
|
|
|
|
print(f"Invalid URL format. Could not extract channel name, year, or month.")
|
|
|
|
return
|
|
|
|
channel_name, year, month = match.groups()
|
|
|
|
print("channel / ",channel_name)
|
|
|
|
#print("year / ",year)
|
|
|
|
#print("month / ",month)
|
|
|
|
#file_pattern = f"{channel_name}*{month}*{year}*.csv"
|
|
|
|
## this is a problem. it works but if there 2 channels.
|
|
## redbull and redbull2 this is throw false positives. ugh
|
|
|
|
file_pattern = f"*{channel_name} - game stats on Twitch in {month} {year} - SullyGnome.csv".lower()
|
|
|
|
for filename in os.listdir("/home/yankee/Downloads/"):
|
|
|
|
updated = filename.lower()
|
|
|
|
#print("file in downloads / ",updated)
|
|
|
|
if fnmatch.fnmatch(updated, file_pattern):
|
|
|
|
print(f"Found matching file: {updated}")
|
|
|
|
return True
|
|
|
|
else:
|
|
|
|
print(f"No matching CSV file found for channel '{channel_name}' in year '{year}' and month '{month}'. (version one)")
|
|
|
|
return False
|
|
|
|
def check_download_exists_matching_url_version_two(url):
|
|
|
|
print ("enter > downloads > exist check > version 2")
|
|
|
|
match = re.search(r"https://sullygnome.com/channel/([^/]+)/(\d+)([a-z]+)/games", url.lower())
|
|
|
|
if not match:
|
|
|
|
print(f"Invalid URL format. Could not extract channel name, year, or month.")
|
|
|
|
return
|
|
|
|
channel_name, year, month = match.groups()
|
|
|
|
print("channel / ",channel_name)
|
|
|
|
print("year / ",year)
|
|
|
|
print("month / ",month)
|
|
|
|
## this is a problem. it works but if there 2 channels.
|
|
## redbull and redbull2 this is throw false positives. ugh
|
|
|
|
unicode_part = r"[\u3040-\u309F\u30A0-\u30FF_]*" # Matches any hiragana, katakana, and underscore
|
|
|
|
file_pattern = f"{unicode_part} \({channel_name}\) - game stats on Twitch in {month} {year} - SullyGnome.csv".lower()
|
|
|
|
print("regex :",file_pattern)
|
|
|
|
for filename in os.listdir("/home/yankee/Downloads/"):
|
|
|
|
updated = filename.lower()
|
|
|
|
print("file in downloads / ",updated)
|
|
|
|
if fnmatch.fnmatch(updated, file_pattern):
|
|
|
|
print(f"Found matching file: {updated}")
|
|
|
|
return True
|
|
|
|
else:
|
|
|
|
print(f"No matching CSV file found for channel '{channel_name}' in year '{year}' and month '{month}'. (version t55555wo)")
|
|
|
|
return False
|
|
|