Skip to content

arunbababa/kindle_hack

Repository files navigation

Kindle to PDF Converter

Kindleアプリの画面を自動的にスクリーンショットして、PDFファイルに変換するツールです。

機能

※注意※ kindle_to_image_mac.py(macの方向け)は動作検証できておりません。不具合があれば教えて頂ければと思います。

  1. Kindle画面の自動キャプチャ (kindle_to_img_windows.py / kindle_to_img_mac.py)

    • Kindleアプリのウィンドウを自動検出
    • ページを自動的にめくりながらスクリーンショットを取得、保存
  2. 画像からPDFへの変換 (img_to_PDF.py)

    • 指定したフォルダ内の画像をPDF化する
    • 実行すると以下の様なwindowが現れる

 image_to_PDFのイメージ

インストール

1. リポジトリのクローンまたはダウンロード

git clone <repository-url>
cd kindle-to-pdf

2. 仮想環境の作成(推奨)

Windows:

python -m venv venv
.\venv\Scripts\Activate.ps1

実行ポリシーエラーが出る場合は:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process
.\venv\Scripts\Activate.ps1

または、バッチファイル経由で:

.\venv\Scripts\activate.bat

※ WSLをご利用中の方は後続のmacOSでのやり方で大丈夫です

macOS:

python3 -m venv venv
source venv/bin/activate

3. 依存パッケージのインストール

pip install -r req.txt

使用方法

ステップ1: Kindle画面を画像に変換

注意!! Windowsでもmacでもこのプログラムを実行中はほかの作業を一度中断し、PCに触れないようにしてください。(プログラム実行中にほかのアプリケーションを触ると落ちる不具合を見つけているため)

500ページあるような本でも1分あれば終わります。

Windows版

  1. Kindleアプリを起動し、読みたい本の表紙を開く(途中からではなく表紙からスタートする必要があります)
  2. 以下の様にフルスクリーンモードにする(必須) sample表紙のイメージ
  3. 以下のコマンドを実行:
python kindle_to_img_windows.py

macOS版

  1. Kindleアプリを起動し、読みたい本の表紙を開く(途中からではなく表紙からスタートする必要があります)
  2. 以下の様にフルスクリーンモードにする(必須) sample表紙のイメージ
  3. 初回実行時: システム環境設定 > セキュリティとプライバシー > プライバシー > アクセシビリティで、ターミナル(または使用するターミナルアプリ)にアクセス権限を付与してください
  4. 以下のコマンドを実行:
python3 kindle_to_img_mac.py

実行時の操作

  1. タイトル入力ダイアログが表示されます
    • タイトルを入力するか、空白のままEnterで現在時刻が使用されます
  • kindleを画像にするプログラム実行時のwindow
  1. 保存先フォルダを選択してください。
    • 保存先フォルダ選択
  2. スクリプトが自動的に:
    • Kindleウィンドウを検索してアクティベート
    • ページをめくりながらスクリーンショットを取得
    • 指定フォルダに 001.png, 002.png, ... として保存

注意: 最後のページに到達すると自動的に終了します(5秒間ページが変わらない場合)

ステップ2: 画像をPDFに変換

  1. 以下のコマンドを実行:
python img_to_PDF.py

または(macOSの場合):

python3 img_to_PDF.py
  1. GUI画面で以下の操作を行います:

    • 画像があるフォルダを選択: ステップ1で保存した画像フォルダを選択
    • PDFファイルの出力先フォルダを選択: PDFファイルを保存するフォルダを選択
    • 出力ファイル名: PDFファイル名を入力(拡張子.pdfは自動で付加されます)
    • 変換ボタンをクリック
  2. 処理が完了すると完了メッセージが表示されます

ファイル構成

kindle-to-pdf/
├── kindle_to_img_windows.py  # Windows用: Kindle画面キャプチャ
├── kindle_to_img_mac.py      # macOS用: Kindle画面キャプチャ
├── img_to_PDF.py             # 画像→PDF変換(クロスプラットフォーム)
├── req.txt                    # 依存パッケージリスト
└── README.md                  # このファイル

トラブルシューティング

Kindleが見つからない(Windows)

  • Kindleアプリが起動しているか確認してください
  • ウィンドウタイトルが「Kindle for PC」であることを確認してください
  • スクリプト内の kindle_window_title 変数を確認・変更してください

Kindleが見つからない(macOS)

  • Kindleアプリが起動しているか確認してください
  • アクセシビリティ権限が付与されているか確認してください
  • ターミナルで以下を実行して権限を確認:
osascript -e 'tell application "System Events" to get name of every application process'

スクリーンショットが取得できない

  • Kindleアプリがフルスクリーンまたは前面に表示されているか確認してください
  • 他のアプリケーションが前面に来ていないか確認してください

画像が正しく保存されない

  • 保存先フォルダの書き込み権限を確認してください
  • ディスク容量を確認してください

権限エラー(macOS)

macOSでは、初回実行時に以下の権限が必要です:

  1. アクセシビリティ権限: システム環境設定 > セキュリティとプライバシー > プライバシー > アクセシビリティ
  2. 画面録画権限: システム環境設定 > セキュリティとプライバシー > プライバシー > 画面録画

ターミナルアプリにこれらの権限を付与してください。

About

kindleをスクショ→PDF化する

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages