Téléchargeur simple et alternatif d'ebooks Legimi écrits en Go.
Fondamentalement, une réécriture du téléchargeur précédent en Lua.
Ce n’est absolument pas officiel, je ne suis en aucun cas affilié à Legimi.
Note
C'est encore un travail en cours, mais il est déjà utilisable.
Vous pouvez trouver plus d’informations sur la façon dont cela s’est produit dans Contexte.
Téléchargez simplement l'archive depuis la section Releases, décompressez-la et rendez-la exécutable (si nécessaire) : $ chmod +x legimi-go
. Vous pouvez bien sûr ajouter le répertoire d'installation à votre variable PATH
pour pouvoir l'exécuter de n'importe où.
Alternativement, si Go est installé, vous pouvez l'installer à l'aide de la commande go install
:
$ go install github.com/tp86/legimi-go@ < version >
peut être une balise de version spécifique des versions ou latest
pour obtenir le code de la branche main
. Notez que la branche main
peut contenir des fonctionnalités inachevées. Cependant, je fais de mon mieux pour ne valider que du code fonctionnel.
Pour afficher l'utilisation, appelez :
$ legimi-go --help
Tous les commutateurs de ligne de commande sont facultatifs.
--config path
Chemin d'accès au fichier de configuration. La valeur par défaut est "$HOME/.config/legimi-go/config.ini"
. Le fichier de configuration contient vos informations d'identification et votre identifiant Kindle tels qu'attribués par le service Legimi. Il sera automatiquement créé (avec les répertoires manquants) lors de la première exécution de la commande, vous n'avez donc généralement pas besoin de le modifier manuellement. Si vous ne souhaitez pas stocker votre identifiant et votre mot de passe dans un fichier, vous pouvez fournir vos informations d'identification en ligne de commande (voir les commutateurs --login
et --password
).
Conseil
Vous pouvez créer de nombreux fichiers de configuration afin de pouvoir basculer facilement entre plusieurs comptes.
--login login
Votre identifiant Legimi. Si vous ne fournissez pas de connexion à partir de la ligne de commande, elle sera lue à partir du fichier de configuration. S'il manque également dans le fichier de configuration, il vous sera demandé de le fournir lors de l'exécution de la commande. Il sera ensuite stocké dans le fichier de configuration, vous n'aurez donc pas à le répéter lors des futures exécutions de commandes. Si vous fournissez une connexion à partir de la ligne de commande, elle ne sera pas écrite dans le fichier de configuration.
--password password
Votre mot de passe Legimi. La même logique que pour la connexion s'applique. Notez que le login et le mot de passe sont stockés dans le fichier de configuration sous forme de texte brut.
--debug
Activez le mode débogage. En mode débogage, les informations sélectionnées sur les demandes et les réponses échangées sont imprimées sur stderr. Actuellement, les informations les plus utiles sont probablement contenues dans la réponse de session.
Note
Vous pouvez donner des commutateurs avec un ( -config
) ou deux tirets ( --config
).
Les commandes disponibles sont :
list
Répertoriez les livres actuellement sur votre étagère Legimi.
download
Téléchargez le(s) livre(s) en fonction de leur(s) identifiant(s). L'identifiant du livre peut être obtenu en listant les livres (première valeur dans la ligne d'entrée du livre).
version
Imprimer la version legimi-go.
Fournir une commande est obligatoire, il n’y a pas de commande par défaut.
Lors du premier appel de commande, vous serez invité à fournir des informations d'identification (si elles ne sont pas fournies via les commutateurs de ligne de commande, voir ci-dessus) et le numéro de série Kindle (Paramètres -> Options de l'appareil -> Informations sur l'appareil dans Kindle). Legimi Kindle Id sera automatiquement interrogé et stocké dans le fichier de configuration pour une utilisation future.
Listez les livres sur votre étagère
$ legimi-go list
Si vous exécutez un script pour la première fois ou si vous transmettez un fichier de configuration qui ne contient pas encore d'informations d'identification, vous serez invité à saisir votre identifiant et votre mot de passe.
Télécharger les livres sélectionnés
$ legimi-go download < book-id >
Le livre téléchargé sera enregistré dans le fichier
dans le répertoire de travail actuel.
Conseil
Vous pouvez cd
au répertoire documents
Kindle monté avant de télécharger pour éviter de copier des fichiers.
Copiez des fichiers dans le répertoire documents
de votre Kindle
Ceci est facultatif si vous avez téléchargé des livres dans le répertoire documents
.
Évidemment, seul un sous-ensemble des fonctionnalités de l'application officielle Legimi est pris en charge.
La plupart des réponses aux erreurs ne sont pas encore reconnues/traitées. Cela devrait s’améliorer à l’avenir.
Le script n'est pas destiné à créer un compte ou à enregistrer un appareil inconnu du service Legimi. Vous devez utiliser l'application officielle pour cela. L'enregistrement de l'appareil fonctionne, mais peut entraîner des problèmes.
Si vous souhaitez savoir combien de téléchargements de livres il reste pendant la période d'abonnement, vous pouvez utiliser le commutateur -debug
et rechercher les informations downloads left
dans la section Session response
. Si vous essayez de télécharger plus de livres que vous n'en limitez, le service Legimi bloquera les téléchargements.
Si quelque chose ne fonctionne pas comme prévu, essayez d'utiliser le commutateur -debug
pour obtenir plus d'informations.
L'application officielle Legimi doit également être vérifiée, car il s'agit d'un point de référence. L'utilisation de l'application officielle peut également potentiellement résoudre des problèmes (#3 (commentaire)).
L'application officielle Legimi ne prend pas en charge Linux. Je voulais pouvoir télécharger des ebooks depuis Linux sans avoir besoin de basculer entre les systèmes d'exploitation (ou même d'installer Windows).
La première version du téléchargeur a été créée en Lua. Cela a bien fonctionné, mais s'est avéré parfois difficile à installer (dépendances installées sur différents chemins). Il est également difficile à maintenir et entraîne des problèmes avec les mises à jour du protocole Legimi. Par conséquent, j'ai décidé de réécrire le script dans Go. J'espère qu'il sera plus facile à installer, à utiliser et à entretenir.
J'ai extrait la logique du téléchargement de livres en fonction du trafic échangé entre l'application officielle Legimi et le service. En tant que tel, il manque certainement des pièces et des fonctionnalités. De plus, la plupart des réponses aux erreurs ne sont pas prises en charge. Voir Limitations pour plus de fonctionnalités manquantes.