PDFへのバッチ改宗者の単語に使用される小型のツールを書き込むには、使用します。
完全なコードは、文書にコピーし、words2pdfs.pyするには、名前を変更された
ファイルディレクトリ変換する必要にコピーされたファイル
の端子に入力されたPythonのwords2pdfs.pyを
端末が変換する必要があり、以下の文献に記載されますが、あなたは、yesと入力することができます。
注意:実行した後にPDFファイルは、すべてのファイルを変換して、現在のディレクトリにフォルダが生成されます。
輸入OS、shutil から win32com インポートクライアント DEFのdoc2pdf(DOC_NAME、pdf_name): "" " :Wordのファイル転送PDF :PARAM DOC_NAME Wordファイル名 :ファイル名のparam pdf_name PDFに変換 " "" 試み: Wordは = client.DispatchEx(" Word.Application " ) IF os.path.exists(pdf_name): os.remove(pdf_name) WordDoc = word.Documents.Open(DOC_NAME、読み取り専用= 1 ) worddoc.SaveAs(pdf_name、FileFormatは = 17 ) 戻りpdf_name 除く例外E AS: 印刷(E) リターン 1。 最終的には: worddoc.Close() word.Quit() DEF doc2docx(DOC_NAME、docx_name): "" " :DOCのターンdocxファイル " "" 試み: #は、最初のdoc docxファイルに変換しました = client.Dispatchワード(" Word.Application " ) DOC = word.Documents.Open(DOC_NAME) #のパラメータは、ドキュメントのDOCXを変換するために16を表す doc.SaveAs(docx_name、16 ) を除く: 渡し 、最終的に: doc.Close() word.Quit() DEF createDirs(basePathを= os.getcwd()): #存放转化后的PDF文件夹 pdfs_dir = basePathを+ ' / PDFファイル' なら ないos.path.exists(pdfs_dir): OS .mkdir(pdfs_dir) リターンpdfs_dirの デフ getFileNames(basePathを= os.getcwd()): ファイル名 = [] #がwords_dirするすべての.wordsファイルを移動する ためのファイルでos.listdir(basePathを): もし file.endswith(' .docxの' ): filenames.append(ファイル) のelifの file.endswith(' .DOC ' ): filenames.append(ファイル) 他: 合格 返すファイル名は デフ変換(basePathを= os.getcwd()、ファイル名の= []): pdfs_dir = createDirs(basePathを) のためのファイル名でファイル名: pdfName = " 。' .join(filename.split(' 。') - 1] +)' .PDF " doc2pdf(os.path.join(basePathを、ファイル名)、os.path.join(pdfs_dir、pdfName)) なら __name__ == ' __main__ ' : basePathを = os.getcwd() lfileNames = getFileNames(basePathを) プリント(「あなたが行っていますこれらのファイルをPDFへ変換するのですか?" ) のためのファイル名でlfileNames: プリント(ファイル名) プリント(『はい/いいえ?』) しばらく真: コマンド = 入力() 場合は、コマンド== ' はい' : 変換(basePathを、lfileNames) ブレーク ELIFの ==コマンドを' なし' : 破る 他: プリント(' 間違ったコマンドを、入力yesまたはnoください')
---------------------
免責事項:この記事はCSDNブロガー「Fantastic_Liarのオリジナルの記事、CC BY-SA 4.0の著作権契約に従って、再現され、オリジナルを添付してくださいソースリンクと、この文。
オリジナルリンクします。https://blog.csdn.net/Fantastic_Liar/article/details/90452928