Descargador sencillo y alternativo de libros electrónicos de Legimi escritos en Go.
Básicamente, una reescritura del descargador anterior en Lua.
Es completamente extraoficial, no estoy afiliado a Legimi de ninguna manera.
Nota
Esto todavía es un trabajo en progreso, sin embargo, ya es utilizable.
Puede encontrar más información sobre cómo surgió en Antecedentes.
Simplemente descargue el archivo de la sección Lanzamientos, descomprímalo y hágalo ejecutable (si es necesario): $ chmod +x legimi-go
. Puede agregar el directorio de instalación a su variable PATH
para poder ejecutarlo desde cualquier lugar, por supuesto.
Alternativamente, si tiene Go instalado, puede instalarlo usando el comando go install
:
$ go install github.com/tp86/legimi-go@ < version >
puede ser una etiqueta de versión específica de las versiones o latest
para obtener el código de la rama main
. Tenga en cuenta que la rama main
puede contener funciones sin terminar. Sin embargo, estoy haciendo todo lo posible para enviar solo código que funcione.
Para ver el uso, invoque:
$ legimi-go --help
Todos los modificadores de la línea de comando son opcionales.
--config path
Ruta al archivo de configuración. El valor predeterminado es "$HOME/.config/legimi-go/config.ini"
. El archivo de configuración contiene sus credenciales y el ID de Kindle asignado por el servicio Legimi. Se creará automáticamente (con los directorios faltantes) en la primera ejecución del comando, por lo que generalmente no es necesario modificarlo manualmente. Si no desea almacenar su nombre de usuario y contraseña en un archivo, puede proporcionar las credenciales en la línea de comando (consulte los modificadores --login
y --password
).
Consejo
Puede crear muchos archivos de configuración para poder cambiar fácilmente entre varias cuentas.
--login login
Su inicio de sesión de Legimi. Si no proporciona el inicio de sesión desde la línea de comando, se leerá desde el archivo de configuración. Si también falta en el archivo de configuración, se le pedirá que lo proporcione durante la ejecución del comando. Luego se almacenará en el archivo de configuración, por lo que no tendrá que repetirlo durante futuras ejecuciones de comandos. Si proporciona inicio de sesión desde la línea de comando, no se escribirá en el archivo de configuración.
--password password
Tu contraseña Legimi. Se aplica la misma lógica que para iniciar sesión. Tenga en cuenta que el nombre de usuario y la contraseña se almacenan en el archivo de configuración como texto sin formato.
--debug
Habilite el modo de depuración. En el modo de depuración, la información seleccionada sobre las solicitudes y respuestas intercambiadas se imprime en stderr. Actualmente, probablemente la información más útil se encuentra en la respuesta a la sesión.
Nota
Puede dar cambios con uno ( -config
) o dos guiones ( --config
).
Los comandos disponibles son:
list
Enumere los libros que se encuentran actualmente en su estantería Legimi.
download
Descargue el(los) libro(s) dada(s) su(s) identificación(es). La identificación del libro se puede obtener enumerando los libros (primer valor en la línea de asiento contable).
version
Imprimir versión legimi-go.
Proporcionar el comando es obligatorio; no existe un comando predeterminado.
En la primera invocación del comando, se le pedirá que proporcione las credenciales (si no se proporcionan mediante cambios en la línea de comandos, consulte más arriba) y el número de serie de Kindle (Configuración -> Opciones del dispositivo -> Información del dispositivo en Kindle). El ID de Legimi Kindle se consultará automáticamente y se almacenará en el archivo de configuración para uso futuro.
Lista de libros en tu estantería
$ legimi-go list
Si está ejecutando un script por primera vez o pasando un archivo de configuración que aún no tiene credenciales, se le solicitará el inicio de sesión y la contraseña.
Descargar libro(s) seleccionado(s)
$ legimi-go download < book-id >
El libro descargado se guardará en el archivo
en el directorio de trabajo actual.
Consejo
Puede cd
al directorio documents
de Kindle montado antes de descargarlos para evitar copiar archivos.
Copie archivos al directorio documents
de su Kindle
Esto es opcional si ha descargado libros mientras estaba en el directorio documents
.
Obviamente, sólo se admite un subconjunto de funciones de la aplicación oficial de Legimi.
La mayoría de las respuestas de error aún no se reconocen ni se manejan. Esto debería mejorar en el futuro.
El script no está destinado a crear una cuenta ni registrar un dispositivo desconocido para el servicio Legimi. Deberías usar la aplicación oficial para esto. El registro del dispositivo funciona, pero puede causar problemas.
Si desea saber cuántas descargas de libros quedan en el período de suscripción, puede usar el interruptor -debug
y buscar información downloads left
en la sección Session response
. Si intenta descargar más libros de los que limita, el servicio Legimi bloqueará las descargas.
Si algo no funciona como se esperaba, intente utilizar el modificador -debug
para obtener más información.
También se debe comprobar la aplicación oficial de Legimi, ya que es un punto de referencia. El uso de la aplicación oficial también puede solucionar problemas (n.º 3 (comentario)).
La aplicación oficial de Legimi no es compatible con Linux. Quería poder descargar libros electrónicos desde Linux sin la necesidad de cambiar entre sistemas operativos (o incluso tener Windows instalado).
La primera versión del descargador se creó en Lua. Funcionó bien, pero a veces resultó difícil de instalar (dependencias instaladas en diferentes rutas). También es difícil de mantener y causa problemas con las actualizaciones del protocolo Legimi. Por eso, decidí reescribir el guión en Go. Espero que sea más fácil de instalar, usar y mantener.
Extraje la lógica de descarga de libros basada en el tráfico intercambiado entre la aplicación y el servicio oficial de Legimi. Como tal, ciertamente faltan piezas y características. Además, la mayoría de las respuestas de error no son compatibles. Consulte Limitaciones para conocer más funciones faltantes.