Otomatis konversi file kata ke format lain

Beberapa negara. Struktur menghasilkan laporan dalam file dokumen. Di suatu tempat ini dilakukan dengan tangan, dan di suatu tempat secara otomatis. Bayangkan Anda diperintahkan untuk memproses satu ton dokumen semacam itu. Ini mungkin diperlukan untuk mengisolasi beberapa informasi tertentu atau hanya memeriksa isinya. Kita hanya perlu mengambil teks yang tidak diformat tanpa grafik dan gambar. Sebagai contoh, data tersebut lebih mudah untuk dimasukkan ke dalam jaringan saraf untuk analisis lebih lanjut.

Berikut ini beberapa opsi untuk orang yang paling biasa:

  • Menangani iterate atas semua file satu per satu. Setelah dokumen kesepuluh, muncul pikiran bahwa Anda melakukan sesuatu yang salah.
  • Cobalah temukan di perpustakaan perpustakaan Internet (ekstensi) untuk bekerja dengan file doc dalam bahasa pemrograman yang Anda miliki. Luangkan satu jam lagi untuk memahami cara bekerja dengan perpustakaan ini. Anda juga harus menghadapi kenyataan bahwa prinsip-prinsip bekerja dengan doc dan docx sedikit berbeda.
  • Cobalah untuk secara otomatis menyimpan kembali semua dokumen dalam format yang berbeda, yang akan lebih nyaman untuk digunakan.

Hanya tentang opsi terakhir dan kita akan bicara.

Dan skrip vbs bergegas untuk membantu kami. Skrip vbs dapat dipanggil dari baris perintah, yang dapat dilakukan dalam bahasa pemrograman apa pun.

Buat file converter.vbs

Const wdFormatText = 2 Set objWord = CreateObject("Word.Application") Set objDoc = objWord.Documents.Open(Wscript.Arguments.Item(0), True) objDoc.SaveAs WScript.Arguments.Item(1), wdFormatText objWord.Quit 

Pada baris pertama, kami menunjukkan format yang akan dikonversi: 2 - ke txt, 17 - ke pdf.
Semua format dapat dilihat di sini . Di baris kedua, kita langsung membuka kata. Setelah membuka, Anda dapat menambahkan baris berikut:

 objWord.Visible = TRUE 

Ini akan menyebabkan kita melihat proses membuka Word. Ini bisa berguna jika pada suatu titik suatu kesalahan terjadi, kata itu tidak menutup sendiri, dan tanpa baris ini prosesnya dapat dimatikan hanya melalui task manager, dan kita cukup mengklik tanda salib.

Pada prompt perintah, skrip akan dijalankan sebagai berikut:

 converter.vbs ___\_.docx ___\___ 

Wscript.Arguments.Item (0) adalah full_path_to_file \ file_name.docx
WScript.Arguments.Item (1) - full_path_to_save_save \ file_name tanpa ekstensi
Dengan demikian, di baris ketiga skrip kami, kami membuka file, dan pada baris berikutnya kami menyimpan dalam format yang ditentukan. Dan pada akhirnya kami menutup kata.

Ada sedikit trik lain yang Anda butuhkan. Terkadang, karena perbedaan dalam versi kata atau karena alasan lain, kata mungkin bersumpah, mengatakan bahwa file tersebut rusak. Saat membuka file secara manual, kita akan melihat peringatan "meja rusak, lanjutkan membuka file?". Dan Anda hanya perlu mengklik "Ya", tetapi skrip akan berhenti bekerja pada saat ini.

Vbs memiliki konstruksi catch catch yang sangat canggung. Anda dapat mengatasi masalah ini dengan menambahkan hanya dua baris. Secara total, skrip stabil lengkap adalah sebagai berikut:

 Const wdFormatText = 2 Set objWord = CreateObject("Word.Application") objWord.Visible = TRUE On Error Resume Next Set objDoc = objWord.Documents.Open(Wscript.Arguments.Item(0), True) Set objDoc = objWord.Documents.Open(Wscript.Arguments.Item(0), True) objDoc.SaveAs WScript.Arguments.Item(1), wdFormatText objWord.Quit 

Seperti yang Anda lihat, pembukaan file digandakan. Jika semuanya sesuai dengan file, file hanya akan membuka dua kali, dan jika terjadi kesalahan, itu hanya akan terus membuka file.

Dan untuk setiap pemadam kebakaran, contoh bagaimana suatu fungsi mungkin terlihat dalam Python

 import os #folder_from = os.getcwd() + r'\words' - ,    word  #folder_to = os.getcwd() + r'\txts' - ,    def convert(file_name): str1 = folder_from + r"/" + file_name str2 = folder_to + r"/" + file_name[:file_name.rfind('.')] os.system('converter.vbs "' + str1 + '" "' + str2 + '"') #  

Selanjutnya, cukup terapkan fungsi ini ke semua file yang perlu dikonversi.

Ringkasan


  1. Solusi ini cocok untuk semua format kata.
  2. Anda menghabiskan tidak lebih dari 10 menit membaca artikel ini.
  3. Anda dapat menerapkan pengetahuan bahasa pemrograman apa pun.

Source: https://habr.com/ru/post/id441736/


All Articles