0

I am a user of vectorizer.io services, but I now need to batch convert and that requires a script utilizing their API. Their customer service sent me a script written in ChatGPT that users have put together, but it isn't working for me (API credentials were removed for posting). I receive this error:

curl: (26) Failed to open/read local data from file/application 

Script:

#!/bin/bash

# Set the api credits code: found in menu / "email address button" / "Api Settings" (enable 'pay for additional credits' if you want to use more than the included 100 api calls)
API_CREDITS_CODE=""

# Set the directory to search for GIF files
DIRECTORY="/Users/User/Desktop/folderofimages"

# Find all GIF files in the specified directory
for file in $(find "$DIRECTORY" -name "*.gif"); do
  # Extract the filename without the file extension
  filename="${file%.*}"
  # Call the curl command, replacing the X-CREDITS-CODE header with the api credits key and the input and output filenames
  curl --http1.1 -H "Expect:" --header "X-CREDITS-CODE: $API_CREDITS_CODE" "https://api.vectorizer.io/v4.0/vectorize" -F "image=@$file" -F "format=svg" -F "colors=0" -F "model=auto" -F "algorithm=auto" -F "details=auto" -F "antialiasing=off" -F "minarea=5" -F "colormergefactor=5" -F "unit=auto" -F "width=0" -F "height=0" -F "roundness=default" -F "palette=" -vvv -o "${filename}.svg"
done

It would also be ideal if the script were to find and use images of all formats, not just GIF. That is not a necessity though.

  • 2
    Most probably because you [DRLWF](https://mywiki.wooledge.org/DontReadLinesWithFor) , maybe ask ChatGPT to fix your script written by it? – Jetchisel Feb 12 '23 at 20:23
  • Try `cd "$DIRECTORY"; for file in *.gif *.jpg *.etc; do` to fix the bug mentioned by @Jetchisel. Add `shopt -s nocaseglob` to also match `*.JPG`. – dan Feb 13 '23 at 06:17

0 Answers0