ホームページ バックエンド開発 Python チュートリアル Python の PyPDF2 モジュールを使用して PDF ドキュメントを分割する方法

Python の PyPDF2 モジュールを使用して PDF ドキュメントを分割する方法

May 09, 2023 pm 03:34 PM
python pdf pypdf2

PyPDF2 モジュールのインストール

# このモジュールでは大文字と小文字が厳密に区別され、y は小文字、残りは大文字です

pip3 install PyPDF2
ログイン後にコピー

Python の PyPDF2 モジュールを使用して PDF ドキュメントを分割する方法

インストールが完了したら、ローカル ハードディスク上にこのプロジェクトを保存するための専用フォルダーを作成します。ここでの保存パスは F:\Python\PyPDF2 です。F ドライブには Python フォルダーがあります。このモジュールを別個に保存し、他のプロジェクトと区別するために、このモジュールにちなんで名付けられたフォルダー。

ファイルを作成して PDF ドキュメントを準備する

Python の PyPDF2 モジュールを使用して PDF ドキュメントを分割する方法

練習用に大きな PDF ドキュメントを探して、Django 公式 Web サイトからダウンロードしました。このドキュメントは 1,900 ページを超える十分な量であり、練習には十分です。必要に応じて、公式 Web サイトにアクセスしてダウンロードするか、公式アカウントに直接「pdf」と返信してダウンロード リンクを取得し、 PDFCF.py プロジェクト ファイル 。

書き込み開始

プログラムは 2 行で始まり、上下 2 つの文を書きます。最初の文は、このファイルの実行プログラムを指定することを意味します. 2 番目の文 この文はこのファイルの説明です。このファイルの機能はまだわかりませんが、プログラムをバッチですばやく実行する方法を知っていれば、その機能がわかるでしょう。ここでは詳しく説明しません。

#! python# PDFCF.py - pdf文件拆分程序
ログイン後にコピー

ドキュメント分割の考​​え方

文書が何個の部分に分割されるかは固定されていませんが、各パートが何ページで構成されるかを固定し、分割数を動的に計算します。分割のアイデアが得られたら、次のステップは計算式をリストすることです。

拆分的份数= 文档总页数 / 拆份每个pdf组成的页数
ログイン後にコピー

例:

合計 35 ページの PDF ドキュメントを分割したい場合、PDF ドキュメントは 10 ページで構成されます。新しい文書を何分割できるかの計算式は次のとおりです:

3.5 = 35 / 10
ログイン後にコピー

このとき、全員が注目します。余りが 0.5 なら、何それは意味ですか?この例を使用すると、3 つの部分に分割した後に 5 ページが残ることを意味します。この場合、残りが何であっても、分割全体を完了するには 1 つ進む必要があります。この文書の分割結果は次のようになります。最初の 3 つの文書 各文書は 10 ページで構成され、4 番目の文書は最後の 5 ページで構成され、割り切れる場合、結果はそのまま分割部数になります。

Pythonの分割計算式:

if 35 % 10:   # 判断是否有余数  35 // 10 + 1   # 取余数整数部分加1else:  0         # 能整除则直接返回0  # 将这个循环写到一行4 = 35 // 10 + 1 if 35 % 10 else 0
ログイン後にコピー

具体的にはどのように分割するのでしょうか?

この 35 ページのドキュメント分割を例として考えてみましょう:

データの各ページを num に対してループします。 range(35) の で各ページのデータを取得し、分割する分割ページ範囲を指定します。

  1. 最初のドキュメントは 0- -10 から始まります。 、10 を除く

  2. 2 番目のドキュメントは 10 ~ 20、20 を除く

  3. 3 番目のドキュメントは 20 ~ 30、20 は含まない30

  4. 4 番目の文書は 30--35 であり、35 は含まれません

ルールをたどるたびにパターンが見つかりました。数値の値は文書内のページ数であり、その文書が属する数値を掛けることで得られます。 2 番目の数値にはパターンがないことがわかりました。実際、注意深く観察するとパターンがあります。分割数を並べ替えると、この例は 1 ~ 4 になります。2 番目の数値は、現在の分割数を乗算したものです。 by each 文書が構成するページ数 (ページ数は 10 に固定)。

しかし、初めてトラバースするときは 0 から開始するため、num は使用できなくなります。その後、それを変更して、1、range(1,35) からトラバースを開始し、最初からトラバースします。 range にはそれ自体の最後の特性が含まれていないため、走査後にドキュメントの 1 ページが失われます。その後、それに 1 を加えて

  1. for num in range( 1,35 1 )

  2. 最初のドキュメントは 10*(1-1)--10*1 から始まり、10 を除きます

  3. 2 つのドキュメントは 10*(2-1)--10*2 であり、20 は含まれません

  4. 3 番目のドキュメントは 10*(3-1)-10* です3、ではありません。 30

  5. ## を含む 4 番目のドキュメントは 10(4-1)--35

からの特定のトラバーサル コードです。

for num in range(1,35+1):  pass  for i in range(10 * (num-1), 10 * num if num != 4 else 35):    pass
ログイン後にコピー

注: num = 4 (ドキュメントの最後のソート番号) までトラバースする場合は、ページの合計数 35 とトラバースを返すだけです。ここで終わります。ここの総ページ数が 35 1 ではなく 35 なのはなぜですか?これは、今回は 0 からトラバースしており、ページ番号は 0 から始まるため、1 を加算する必要がないからです。

完全な分割手順:

import PyPDF2
ログイン後にコピー

注: 個人的には、上記の分割の考え方は少し複雑だと感じています。 Python リストのエッジ トリミングとステップ サイズの概念を十分に理解している場合は、それほど複雑にする必要はないと思います。総ページ数の大きなリストを生成し、分割するだけで済みます。スライス法を使用してリストを複数の小さなリストに分割し、各リストを分割します。分割された PDF ページ番号の範囲は、各小さなリストの最初の番号から最後の番号 1 です。また、リスト メソッドを使用して実装したコードも投稿しました。参照。

PDFを分割する分割リスト方法:

#! python
ログイン後にコピー

使い方は?

Python の PyPDF2 モジュールを使用して PDF ドキュメントを分割する方法

プロジェクト フォルダー内で Shift キーを押したままマウスを右クリックし、ここでコマンド ウィンドウを開くことを選択し、PDFCF.py と入力し、Enter キーを押して、必要に応じて変更します。 nの値が必要です。

Python の PyPDF2 モジュールを使用して PDF ドキュメントを分割する方法

以上がPython の PyPDF2 モジュールを使用して PDF ドキュメントを分割する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

mysqlは支払う必要がありますか mysqlは支払う必要がありますか Apr 08, 2025 pm 05:36 PM

MySQLには、無料のコミュニティバージョンと有料エンタープライズバージョンがあります。コミュニティバージョンは無料で使用および変更できますが、サポートは制限されており、安定性要件が低く、技術的な能力が強いアプリケーションに適しています。 Enterprise Editionは、安定した信頼性の高い高性能データベースを必要とするアプリケーションに対する包括的な商業サポートを提供し、サポートの支払いを喜んでいます。バージョンを選択する際に考慮される要因には、アプリケーションの重要性、予算編成、技術スキルが含まれます。完璧なオプションはなく、最も適切なオプションのみであり、特定の状況に応じて慎重に選択する必要があります。

インストール後にMySQLの使用方法 インストール後にMySQLの使用方法 Apr 08, 2025 am 11:48 AM

この記事では、MySQLデータベースの操作を紹介します。まず、MySQLWorkBenchやコマンドラインクライアントなど、MySQLクライアントをインストールする必要があります。 1. mysql-uroot-pコマンドを使用してサーバーに接続し、ルートアカウントパスワードでログインします。 2。CreatedAtaBaseを使用してデータベースを作成し、データベースを選択します。 3. createTableを使用してテーブルを作成し、フィールドとデータ型を定義します。 4. INSERTINTOを使用してデータを挿入し、データをクエリし、更新することでデータを更新し、削除してデータを削除します。これらの手順を習得することによってのみ、一般的な問題に対処することを学び、データベースのパフォーマンスを最適化することでMySQLを効率的に使用できます。

MySQLはダウンロード後にインストールできません MySQLはダウンロード後にインストールできません Apr 08, 2025 am 11:24 AM

MySQLのインストール障害の主な理由は次のとおりです。1。許可の問題、管理者として実行するか、SUDOコマンドを使用する必要があります。 2。依存関係が欠落しており、関連する開発パッケージをインストールする必要があります。 3.ポート競合では、ポート3306を占めるプログラムを閉じるか、構成ファイルを変更する必要があります。 4.インストールパッケージが破損しているため、整合性をダウンロードして検証する必要があります。 5.環境変数は誤って構成されており、環境変数はオペレーティングシステムに従って正しく構成する必要があります。これらの問題を解決し、各ステップを慎重に確認して、MySQLを正常にインストールします。

MySQLダウンロードファイルが破損しており、インストールできません。修復ソリューション MySQLダウンロードファイルが破損しており、インストールできません。修復ソリューション Apr 08, 2025 am 11:21 AM

mysqlダウンロードファイルは破損していますが、どうすればよいですか?残念ながら、MySQLをダウンロードすると、ファイルの破損に遭遇できます。最近は本当に簡単ではありません!この記事では、誰もが迂回を避けることができるように、この問題を解決する方法について説明します。それを読んだ後、損傷したMySQLインストールパッケージを修復するだけでなく、将来の行き詰まりを避けるために、ダウンロードとインストールプロセスをより深く理解することもできます。最初に、ファイルのダウンロードが破損した理由について話しましょう。これには多くの理由があります。ネットワークの問題は犯人です。ダウンロードプロセスの中断とネットワーク内の不安定性は、ファイル腐敗につながる可能性があります。ダウンロードソース自体にも問題があります。サーバーファイル自体が壊れており、もちろんダウンロードすると壊れています。さらに、いくつかのウイルス対策ソフトウェアの過度の「情熱的な」スキャンもファイルの破損を引き起こす可能性があります。診断問題:ファイルが本当に破損しているかどうかを判断します

mysqlはインターネットが必要ですか? mysqlはインターネットが必要ですか? Apr 08, 2025 pm 02:18 PM

MySQLは、基本的なデータストレージと管理のためにネットワーク接続なしで実行できます。ただし、他のシステムとのやり取り、リモートアクセス、または複製やクラスタリングなどの高度な機能を使用するには、ネットワーク接続が必要です。さらに、セキュリティ対策(ファイアウォールなど)、パフォーマンスの最適化(適切なネットワーク接続を選択)、およびデータバックアップは、インターネットに接続するために重要です。

高負荷アプリケーションのMySQLパフォーマンスを最適化する方法は? 高負荷アプリケーションのMySQLパフォーマンスを最適化する方法は? Apr 08, 2025 pm 06:03 PM

MySQLデータベースパフォーマンス最適化ガイドリソース集約型アプリケーションでは、MySQLデータベースが重要な役割を果たし、大規模なトランザクションの管理を担当しています。ただし、アプリケーションのスケールが拡大すると、データベースパフォーマンスのボトルネックが制約になることがよくあります。この記事では、一連の効果的なMySQLパフォーマンス最適化戦略を検討して、アプリケーションが高負荷の下で効率的で応答性の高いままであることを保証します。実際のケースを組み合わせて、インデックス作成、クエリ最適化、データベース設計、キャッシュなどの詳細な主要なテクノロジーを説明します。 1.データベースアーキテクチャの設計と最適化されたデータベースアーキテクチャは、MySQLパフォーマンスの最適化の基礎です。いくつかのコア原則は次のとおりです。適切なデータ型を選択し、ニーズを満たす最小のデータ型を選択すると、ストレージスペースを節約するだけでなく、データ処理速度を向上させることもできます。

MySQLインストール後に開始できないサービスのソリューション MySQLインストール後に開始できないサービスのソリューション Apr 08, 2025 am 11:18 AM

MySQLは開始を拒否しましたか?パニックにならないでください、チェックしてみましょう!多くの友人は、MySQLのインストール後にサービスを開始できないことを発見し、彼らはとても不安でした!心配しないでください、この記事はあなたがそれを落ち着いて対処し、その背後にある首謀者を見つけるためにあなたを連れて行きます!それを読んだ後、あなたはこの問題を解決するだけでなく、MySQLサービスの理解と問題のトラブルシューティングのためのあなたのアイデアを改善し、より強力なデータベース管理者になることができます! MySQLサービスは開始に失敗し、単純な構成エラーから複雑なシステムの問題に至るまで、多くの理由があります。最も一般的な側面から始めましょう。基本知識:サービススタートアッププロセスMYSQLサービススタートアップの簡単な説明。簡単に言えば、オペレーティングシステムはMySQL関連のファイルをロードし、MySQLデーモンを起動します。これには構成が含まれます

MySQLインストール後にデータベースのパフォーマンスを最適化する方法 MySQLインストール後にデータベースのパフォーマンスを最適化する方法 Apr 08, 2025 am 11:36 AM

MySQLパフォーマンスの最適化は、インストール構成、インデックス作成、クエリの最適化、監視、チューニングの3つの側面から開始する必要があります。 1。インストール後、INNODB_BUFFER_POOL_SIZEパラメーターやclose query_cache_sizeなど、サーバーの構成に従ってmy.cnfファイルを調整する必要があります。 2。過度のインデックスを回避するための適切なインデックスを作成し、説明コマンドを使用して実行計画を分析するなど、クエリステートメントを最適化します。 3. MySQL独自の監視ツール(ShowProcessList、ShowStatus)を使用して、データベースの健康を監視し、定期的にデータベースをバックアップして整理します。これらの手順を継続的に最適化することによってのみ、MySQLデータベースのパフォーマンスを改善できます。

See all articles