Najnowsza wersja tego narzędzia dostępna jest do pobrana ze strony: ExtractCoverThumbs 0.6 – teraz również w wersji okienkowej dla Windows
Chciałem zaprezentować skrypt powłoki Bash, który ma za zadanie:
- Sprawdzić, czy dana książka pobrana z chmury Amazonu i znajdująca się na czytniku posiada już okładkę.
- Jeśli nie posiada okładki to rozpakowuje plik książki znajdujący się na czytniku i wydobywa z niej okładkę w wysokiej rozdzielczości. Uwaga! Plik książki poddanej rozpakowaniu nie jest w żaden sposób modyfikowany.
- Modyfikuje odpowiednio nazwę okładki i kopiuje ją do właściwego folderu na czytniku.
Dzięki temu możemy cieszyć się wysokiej jakości okładkami w Kindle Paperwhite, a także nie rezygnujemy z dobrodziejstw synchronizacji postępu czytania książki pomiędzy różnymi urządzeniami Kindle.
Ww. skrypt nie usuwa białego paska „Personal” z okładki. Choć technicznie jest to możliwe do implementacji, jednak w praktyce po wykonaniu takiego zabiegu książka nie jest już prawidłowo synchronizowana z innymi urządzeniami Kindle.
Minimalne wymagania dla poprawnej pracy skryptu:
Wymagania z punktów 1–3 powinny być spełnione bez potrzeby doinstalowywania czegokolwiek w systemach Mac OS X, rodziny BSD, a także dystrybucjach Linux.
Wiem, że powyższe wymagania praktycznie eliminują użytkowników systemu Windows, ale nic nie stoi na przeszkodzie, żeby ktoś spróbował przeportować omawiany skrypt na np. skrypt powłoki PowerShell.
Konfiguracja wstępna skryptu:
Po pobraniu i rozpakowaniu poniższego pliku ZIP należy zmodyfikować ścieżki konfiguracyjne skryptu:
1 2 |
KinUnp="/KindleUnpack_v62" WorkDir="/Volumes/Kindle" |
- Pierwsza ścieżka wskazuje, gdzie na naszym komputerze jest rozpakowany skrypt KindleUnpack.
- Druga ścieżka wskazuje, gdzie zamontowany jest nasz czytnik Kindle po podłączeniu do komputera za pomocą kabelka USB.
Uruchamianie skryptu:
Po podłączeniu czytnika Kindle uruchamiamy skrypt wpisując (w katalogu, gdzie znajduje się rozpakowany skrypt) w powłoce Bash:
1 |
./ExtractThumbnails.sh |
Po zakończeniu pracy skryptu odmontowujemy czytnik i cieszymy się okładkami 🙂
Skrypt w widoku źródła:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
#!/bin/bash # By Robert Blaut https://blog.blaut.biz # This script is licensed under # a Creative Commons Attribution 3.0 Unported License (CC BY 3.0) # http://creativecommons.org/licenses/by/3.0/ ########## CONFIG PARAMETERS ############ KinUnp="/KindleUnpack_v62" WorkDir="/Volumes/Kindle" ####### END OF CONFIG PARAMETERS ######## clear shopt -s nullglob _azw3="$WorkDir/documents/*.azw3" for f in $_azw3 do echo "Processing $f file..." ASIN=`ls "$f" | sed -n -E 's/.+_(.+)\..+/\1/p'` FIRST="$WorkDir/system/thumbnails/thumbnail_" LAST="_PDOC_portrait.jpg" LASTE="_EBOK_portrait.jpg" if [ ! -f $FIRST$ASIN$LAST ] && [ ! -f $FIRST$ASIN$LASTE ] then python "$KinUnp/lib/kindleunpack.py" "$f" 1 THUMB=`cat ./1/mobi8/OEBPS/*.opf | sed -n -E 's/.+id="cover_img.+href="(.+)".+/\1/p'` if [ "$THUMB" != "" ] then mv "1/mobi7/$THUMB" $FIRST$ASIN$LAST fi rm -rd 1 fi done _azw="$WorkDir/documents/*.azw" for f in $_azw do echo "Processing $f file..." ASIN=`ls "$f" | sed -n -E 's/.+_(.+)\..+/\1/p'` FIRST="$WorkDir/system/thumbnails/thumbnail_" LAST="_PDOC_portrait.jpg" LASTE="_EBOK_portrait.jpg" if [ ! -f $FIRST$ASIN$LAST ] && [ ! -f $FIRST$ASIN$LASTE ] then python "$KinUnp/lib/kindleunpack.py" "$f" 1 THUMB=`cat ./1/mobi7/*.opf | sed -n -E 's/.+id="cover_img.+href="(.+)".+/\1/p'` if [ "$THUMB" != "" ] then mv "1/mobi7/$THUMB" $FIRST$ASIN$LAST fi rm -rd 1 fi done |
Jeden komentarz do “Skrypt-lekarstwo na brakujące okładki książek pobranych z Amazon Personal Documents w Kindle Paperwhite”