ラベル Windows の投稿を表示しています。 すべての投稿を表示
ラベル Windows の投稿を表示しています。 すべての投稿を表示

2022/08/08

【Python】PDF内の表をExcelに変換する

本記事のタイトルの内容で検索して出てくるのは、tabula-pyを使用した例が多いです。tabula-pyは、Javaのライブラリのラッパーであるため、Javaのインストールや設定が必要とのことで、どうにかtabula-pyを使わずにやる方法がないか検討しました。

そこで思いついたのが、以前紹介したwin32comを使用する方法です。win32comを使うことで、Microsoft Officeを操作できるため、Pythonから下記の動作を実行することができます。
  1. PDFファイルをWordで開く
  2. 表を選択してコピー
  3. Excelに貼り付け、名前をつけて保存
これで、PDF内の表をExcelファイルに変換する作業の自動化が可能です。xlsxにした後は、Pandasで読み込むなど自由に操作可能です。


注意 : 使用できる環境等に条件があります。
  • win32comを使用するため、WindowsにMicrosoft Officeがインストールされている環境であること
  • PDFファイルの「セキュリティ設定」でコピーが禁止されていないこと
参考:

2022/03/15

【Python】pptx形式のPowerPointファイルからテキストデータを抽出する

PowerPointファイルからテキストデータを抽出することで、テキストマイニングや文書ファイルの検索といった応用が可能になります。
本記事では、pptx形式のPowerPointファイルからテキストデータを抽出するPythonスクリプトについて、三種類の手法を比較して紹介します。

python-pptxを使用する


python powerpoint テキスト 抽出」などで検索してよくヒットするのが、「python-pptx」を使用する方法です。
python-pptxは、pptx形式のPowerPointファイルを操作できるpythonライブラリで、Pythonによるスライド作成の自動化などの記事をよく見かけますが、作成だけでなく読み取りも可能です。
注意点として、読み取り・書き込みパスワードや権限が設定されている場合は利用出来ないという問題があります。また、「x」のついていない方の.ppt形式のPowerPointファイルは開けないので、何らかの方法で.pptxに変換する必要があります。

例1:

Pythonの標準ライブラリを使用する


Office 2007 以降で保存可能になった.docx, .xlsx, .pptx といった拡張子のOfficeファイルは、XMLファイルなどをzip圧縮したものです。したがって、「re」や「zipfile」、「xml.etree.ElementTree」といった標準ライブラリだけを用いて読み取ることができます。
python-pptxを使用する場合と同様に、読み取り・書き込みパスワードや権限が設定されている場合はzipが解凍できないため利用出来ないという問題があります。また、.ppt形式の場合も、zipファイルではないので開けません。
ライブラリを追加したくない場合などはこの手法が使えると思います。

例2:
参考:

pywin32(win32com)を使用する


Windows環境で実行するという条件がつきますが、この方法であればパスワードや権限が設定されているPowerPointファイルからもテキストが取り出せます。win32comとかPyWin32とかPython for Windows extensionsとか呼ばれているライブラリを用いる方法です。
VBAで操作することに慣れている場合は、細かいところまで手が届くので良いかと思います。この方法だと、PowerPointのアプリケーションを経由して情報が抽出されるので、PowerPointアプリにアカウント設定がされていれば、権限設定のある.pptx形式のみならず、.ppt形式のPowerPointファイルの場合も操作可能です。
問題として、WindowsPowerPointアプリのインストール・設定が必要となるので、環境構築の手間がかかります。

例3:
参考:

win32comを使用することで、.pptファイルを.pptxファイルやpdfに変換することもできるので、上記の手法などと組み合わせて使うというのも一つの手かもしれません。

ここまで紹介した例では、「ノート」の中身のテキスト抽出について触れていませんでしたが、やり方を紹介されている方を見つけたのでリンクを掲載させていただきます。


関連記事:

2020/03/03

【3.2万円PC】ThinkCentre M75q-1 Tinyを購入しました


一部界隈で話題な3.2万円で買える第三世代Ryzen5搭載の小型PC、ThinkCentre M75q-1 Tinyを購入しました。n番煎じなので、特に購入方法などは記載しませんが、納期や使用感などについて残しておこうと思います。

注文から到着まで


納期


注文日:2020/01/31
到着日:2020/02/28
と注文から発送まで約3週間、発送から到着まで約1週間と一ヶ月ほどかかりました。
新型コロナウィルスの影響のせいもあるかと思いますが、すぐ欲しいという人向けではないですね。

購入価格


以前のモデルを、職場で使用したことがあり、サイズ感や静音性などが気に入っていました。
今回は自分のお財布での購入なのでケチった構成です。
購入内容は以下の通り、最安構成のカスタマイズです。

製品名 価格 合計
ThinkCentre M75q-1 Tiny:価格.com限定 パフォーマンス
・AMD Ryzen 5 Pro 3400GE (3.30GHz, 2MB)
・8GB PC4-21300 SODIMM
・1TB ハードディスクドライブ, 7200rpm 2.5インチ 7mm
¥29,200 ¥29,200
Lenovo USB Type-C - スリムチップアダプター ¥1,875 ¥1,875
小計 ¥31,075
税金 ¥3,107
送料 ¥0
合計 ¥34,182

また、一部サイトで紹介のある通り、楽天のRebateを通して購入したので、5%のポイント還元をゲットしました。
34,182円-1,709ポイント=実質32,473円での購入になりました。
時期によっては、10%還元なども行っているようなので、購入時期次第では更にお得に購入出来そうです。

数日使った感想としては、Wi-Fi/Bluetoothモジュールは追加しておいても良かったかもと若干後悔していますが、今のところはなしでも事足りています。

購入後のカスタマイズ


注意:保証対象外になる可能性もあるので自己責任で実施してください。


SSDへの換装



ケース裏側の蓋を開けると、M.2スロットがあるので、以前購入したSSDを差してWindows10をクリーンインストールしました。
元々ついていた1TBのHDDはデータ用のDドライブに変更しました。
CrystalDiskMarkでの速度の計測結果の比較は以下の通りです。
HDD SSD換装後

当然ですが、かなり高速になり、OSの起動速度などの使用感も良くなりました。
マザーボードがPCIe 4.0対応でない様で、Raed速度は3500MB/s程度ですが、実用上十分だと思います。

注文時の公式カスタマイズだと、SSDの変更の料金は以下の通り。

512GBのM.2 SSDへの変更で+41,800円かかりますが、今回、追加したCSSD-M2B5GPG3VNF(500GB)は15,000円程度で購入したので、約27,000円節約できました。
本体が3.2万円であることを考えるとこの差は大きいです。
1TBのM.2 SSDに変更したい場合、例えばCSSD-M2B1TPG3VNF(1TB)は、実売価格20,000円程度なので、60,000円程度節約できます。
M.2 SSDの追加はかなり簡単なので、自分でのカスタマイズがかなりお得感があり、満足度が高いのではないでしょうか。


メモリの増設


ケース裏側の蓋を開けるとメモリスロットは二つあり、注文時は、DDR4 8GBメモリ×1枚を選択したので、もう一枚メモリが追加できる状態。
カスタマイズ時には、PC4-21300(DDR4-2666) SODIMM 8GBとなっていましたが、なぜかMicron製のPC4-25600(DDR4-3200) SODIMM 8GBが搭載されていました。

同一規格が良かろうと思い、以下の商品を注文しました。


こちらのメモリも製造元はMicronですが、Crucialのブランドで販売されています。
購入時点でのヨドバシ.comの販売価格は5,240円(10%ポイント還元)でしたが、ポイントが余っていたので全額ポイントで購入しました。
元々ついていたのが、PC4-25600(DDR4-3200)メモリだったので、同規格のメモリを追加購入しましたが、
Ryzen 5 Pro 3400GEの対応規格がPC4-23400(DDR4-2933)までで、Lenovoでの標準がPC4-21300(DDR4-2666)なので、PC4-21300(DDR4-2666)の追加でも問題ないかと思います。

メモリの増設も差し込むだけなので、かなり簡単に完了しました。

注文時の公式カスタマイズだと、メモリの変更の料金は以下の通り。
8GB×1枚から8GB×2枚への変更で、+13,200円かかりますが、メモリ価格が5000円程度であることを考えると、約8,000円節約できました。
M.2 SSDの追加同様簡単なので、おすすめです。


2018/07/25

【Windows10】SSD(120GB)からSSD(500GB)にクローンして換装した

今年のPrime DayでCrucialのMX500を購入しました。

現在使用しているデスクトップPC(7年選手)のSSDの容量が120GBと少なく、容量がほぼ限界まできていたので、SSDを比較的大容量のものに入れ替えることにしました。
これまで、グラフィックボードや電源の交換の経験はありますが、ストレージの入れ替えはノートパソコンのHDDぶりです。
ド素人なりに、忘備録を残しておきます。

新しいSSD

元のSSD

データ移行のため、SSD接続用にAUKEYの2.5インチSSD ケースを使いました。


SSDのクローン作業はすぐ終わると思っていましたが、予想外に手間取り結局何度か試すことになりました。
元よりも容量が大きいSSDへの移行だったため、パーティションサイズを変更してクローンしたかったのですが、うまく扱えませんでした。最終的に、おすすめ記事が多いEaseUS Todo Backup Freeではなく、AOMEI Backupper Standardを使いました。

クローン後は、元のSSDが繋がっていたSATAに差し替えて換装完了です。
問題なくWindowsも起動しました。

換装前後のCrystalDiskMarkのベンチマークスコアは以下の通りです。

A-DATA S511(120GB)
Crucial MX500(500GB)

容量にかなり余裕ができ、書き込み速度も向上し、大変満足のいく結果となりました。

2016/09/04

Windows上のVMwareにMac OS X 10.11 El Capitanをインストールする時にはまったこと

本記事では、Windows上のVMwareにMac OS X 10.11 El Capitanをインストールする際に、困ったこととその解決策をまとめています。

注意
・Windows機でMac OS Xを動かす行為はApple社の規約に抵触する恐れがあります。
・本記事に書かれていることを行ったことによる如何なる事象についても責任を負いかねます。自己責任で行ってください。
・本記事はインストールする手順を解説するものではありません。手順については他のサイトを参照してください。

El Capitanのインストールを始めるまでに


El Capitanのインストールメディアの用意

前回、インストール用のisoを作成したので、今回はこれを用いてVMware Playerの新規仮想マシンを作成します。

Appleの公式ページからSnow Leopardのディスクを手に入れて、isoを作成するのがオススメです。ウェブ上で怪しげなサイトからisoファイルを拾ってくるのではなく、正規の手法で手に入れることができます。


VMware Playerの新規仮想マシン作成ウィザードでインストール元にインストーラディスクイメージファイルを選択。
前回、VMware Playerをアンロックしたことで、OS X 10.11対応になったので、問題ないかと思ったのですが…。

VMware Player「回復不可能なエラー:(vcpu-0) vcpu-0:VERIFY ...」


エラーが出て次に進めません。
vmxファイルを弄る必要があるそうです。


vmxファイルをメモ帳などで開き、
smc.version = "0"
を追加し上書き保存します。


OS Xのインストール先となるディスクがない

前回、経験積みですので同様です。
画面上部からディスクユーティリティを起動してVMwareで作った仮想HDDをフォーマットします。

インストール後に困ったこと


iPhoneを認識しない

PCとiPhoneをUSBでつないだ際に、VMware Playerの右上のアイコンではONになっているにもかかわわず、VMware上のEl Capitan(VMware Toolsはインストール済み)はiPhoneを認識してくれませんでした。


仮想マシン設定からUSBコントローラのUSBの互換性を「USB3.0」から「USB2.0」に変更し、VMware Playerを再起動したところ、認識するようになりました。


2016/09/02

Windows上のVMwareにMac OS X 10.6 Snow Leopardをインストールする時にはまったこと

本記事では、Windows上のVMwareにMac OS X 10.6 Snow Leopardをインストールする際に、困ったこととその解決策をまとめています。
注意
・Windows機でMac OS Xを動かす行為はApple社の規約に抵触する恐れがあります。
・本記事に書かれていることを行ったことによる如何なる事象についても責任を負いかねます。自己責任で行ってください。
・本記事はインストールする手順を解説するものではありません。手順については他のサイトを参照してください。
・本記事の内容は一部が古い情報の可能性があります。コメント等でご指摘頂ければ修正したいと考えております。

インストールを始めるまでに


Snow Leopardのインストールメディアの用意


AmazonでSnow Leopardのインストール用DVDを買ったよという記事もよく見かけますが、Appleの公式ページから購入することができます。



2021/07/01追記
インストーラーがAppleの公式サポートページから無料でダウンロード可能になったようです。
Mac OS X Lion Installer
Mac OS X Mountain Lion Installer
https://support.apple.com/kb/DL2076?locale=en_US

VMware Playerのバージョン

Workstation 12 Playerに、後述のUnlockerを用いることで問題なくインストールできるようになります。

Unlockerのバージョン

Workstation 12 Playerはデフォルトの状態では、Mac OS XをゲストOSに指定できないので、パッチをあてます。それがMac OS X Unlocker for VMware V2.0(ダウンロードには会員登録が必要)です。

今回は、Unlocker 2.0.7を使いました。


VMware Player「ゲスト OSがMac OS X Serverではありません。」



OS XをゲストOSに選ぶことができるようになりましたが、最初に用意したインストールメディアはMac OS X 10.6.3 Snow Leopardなので、このエラーメッセージが出て先に進まず、DVDをiso化しても次に進めませんでした。


vmxファイルを弄る必要があるようです。




OS Xのインストール先となるディスクがない

インストールが始められると思ったら、VMware上ではハードディスクを割り当てたはずなのに、OS Xのインストール先のディスクが見当たりません。
画面上部からディスクユーティリティを起動してVMwareで作った仮想HDDを消去&フォーマットすると現れます。

インストールには30分ほどかかりました。

Snow Leopardのインストール後の設定


音声が出ない

サウンドドライバのインストールが必要です。
OS X上でここ(https://sourceforge.net/projects/vmsvga2/files/Audio/)からEnsoniqAudioPCI_v1.0.3_Common_Installer.pkgをダウンロードし、インストールします。


画面解像度を変更したい

VMwareの設定ではなく、ゲストOSであるOS Xの設定から変更できます。

キーボードの日本語化

PSJ.keylayoutを用いる方法が紹介されていましたが、うまくいきませんでした。
vmxファイルを弄ることでJISキーボードとして動作するようになりました。


keyboard.vusb.enable = "TRUE"
keyboard.vusb.idVendor = "0x0000"
keyboard.vusb.idProduct = "0x0000"

vmxファイルをメモ帳などで開いて、上記の三行を追加し、上書き保存します。


El Capitanへの道のり


El Capitanをダウンロードしたい

Snow Leopardを10.6.8にアップデートする必要があります。
「ソフトウェアアップデート」を実行します。
AppStoreからダウンロードできます。

El Capitanのisoを作成したい

ダウンロード完了後El Capitanのインストールを行わずに終了する。
ターミナルから参考サイトのコマンドをコピペして実行したところ、デスクトップ上にisoファイルが作成されました。