While I can find all the .tgz files within a folder and then extract only PDF, EPUB and MOBI files from it if it is present in the archive.
find '/home/pi/Downloads/complete/' -type f -name "*.tgz"| while read i ; do tar -xvzf "$i" -C /home/pi/Downloads/complete/ebook/ --strip=1 --wildcards --no-anchored '*.pdf' '*.mobi' '*.epub'; done
tar: *.pdf: Not found in archive
tar: *.mobi: Not found in archive
tar: Exiting with failure status due to previous errors
tar isn't a scripting language.
To hide the error message, just redirect the stderr of tar to a bit bucket:
tar ... 2> /dev/null
Note that you might miss other errors, though.
The safe way would be to list the files first, select the ones to extract, and only do that if there were any.
tar --list -f ...tgz | grep '\.\(pdf\|mobi\|epub\)$'