Added CSV output.
This commit is contained in:
@ -1,20 +1,24 @@
|
||||
import requests
|
||||
from PIL import Image
|
||||
from io import BytesIO
|
||||
import csv
|
||||
|
||||
# The base URL for ChiliFresh - the UPC, ISSN, and sizes aren't too relevant here
|
||||
BASE_URL = "https://content.chilifresh.com/?isbn={isbn}&upc=&issn=&size=S"
|
||||
|
||||
# File management
|
||||
isbn_file = "isbns.txt" # Provide a single column list of ISBNs in a plain text file
|
||||
output_file = "isbn-image-checks.txt" # Your results will drop here
|
||||
output_csv = "isbn-image-checks.csv" # Your results will drop here
|
||||
|
||||
# Read the ISBNs from the input file
|
||||
# Read the ISBNs from input file
|
||||
with open(isbn_file, "r") as f:
|
||||
isbns = [line.strip() for line in f if line.strip()]
|
||||
|
||||
# Open and prepare the output file
|
||||
with open(output_file, "w") as out:
|
||||
with open(output_csv, "w", newline="") as csvfile:
|
||||
writer = csv.writer(csvfile)
|
||||
writer.writerow(["ISBN", "ImageSize"]) # Your CSV headers
|
||||
|
||||
for isbn in isbns:
|
||||
url = BASE_URL.format(isbn=isbn)
|
||||
try:
|
||||
@ -23,14 +27,16 @@ with open(output_file, "w") as out:
|
||||
|
||||
image = Image.open(BytesIO(response.content))
|
||||
width, height = image.size
|
||||
image_size = f"{width}x{height}"
|
||||
|
||||
out.write(f"{isbn}: {width} x {height} pixels\n")
|
||||
print(f"Processed ISBN {isbn}: {width} x {height}")
|
||||
writer.writerow([isbn, image_size])
|
||||
print(f"{isbn}: {image_size}")
|
||||
|
||||
# Error handling
|
||||
except requests.exceptions.RequestException as e:
|
||||
out.write(f"{isbn}: Image retrieval error - {e}\n")
|
||||
print(f"Error retrieving image for ISBN {isbn}: {e}")
|
||||
writer.writerow([isbn, f"Image retrieval error - {e}"])
|
||||
print(f"Error retrieving image for {isbn}: {e}")
|
||||
|
||||
except Exception as e:
|
||||
out.write(f"{isbn}: Image processing error - {e}\n")
|
||||
print(f"Error processing image for ISBN {isbn}: {e}")
|
||||
writer.writerow([isbn, f"Image processing error - {e}"])
|
||||
print(f"Error processing image for {isbn}: {e}")
|
||||
|
Reference in New Issue
Block a user