今日も見にきてくれて、ありがとう。久しぶりの更新です。そのうちまた更新しますので、また見にきてくださいね。
おしごとの関連で富士ゼロックスさんのドキュワークスでつくられた文書のテキストを抜き出す必要があったので、Pythonスクリプト作成してみました。帳票出力のプログラムを修正したときに、修正前後の差分をとって、チェックするのに便利です。
ご利用は自己責任でどうぞ。
利用するまでに必要な作業は以下の通りです。
1.Pythonのインストール
これは、本家のサイトをご覧になってがんばってやってください。
ぼくの環境は、実行時最新の3.7.4をインストールしました。
2.xdwlibのインストール
「pip install xdwlib」で完了。3.8.2.0がインストールされました。なぜかインストール時にエラーがでましたけど、正常に利用できました。林秀樹さん、ありがとうございます。
from sys import argv, exit from os.path import basename, isfile, splitext from xdwlib import xdwopen def export_xdwfulltext(input_file): BASE_FILENAME , ext = splitext(input_file) if ext.lower() != ".xdw": print("指定されたファイルの拡張子が.xdwではありません。["+ext+"]") input("Hit Enter key.") return if not isfile(input_file): print("指定されたファイルが存在しません。["+input_file+"]") input("Hit Enter key.") return OUTPUT_PATHNAME = BASE_FILENAME + ".txt" if isfile(OUTPUT_PATHNAME): print("出力先のファイルが既に存在します。["+OUTPUT_PATHNAME+"]") answer = input("上書きしますか?(Y/N):") if answer.upper()[0] != "Y": print("処理を中断しました。") return with open(OUTPUT_PATHNAME,"w",encoding="utf-8") as f,\ xdwopen(input_file) as doc: for p in doc: f.write(p.fulltext()) f.write("\n") if __name__ == '__main__': if len(argv) < 2: print(basename(argv[0]),"は、ドキュワークスで出力されたxdwファイルの中のテキストを出力するプログラムです。") print("拡張子が.xdwのファイルのみ対象とし、同ファイル名の.txtファイルとして出力します。") print("使い方1:",basename(argv[0]),"hoge.xdw ...") print("使い方2:",basename(argv[0]),"に、ファイルをドラッグ&ドロップ") input("Hit Enter key.") exit for f in argv[1:]: export_xdwfulltext(f)