اولین “گام کودک” من در خودکارسازی وظایف در پایتون برای پروژه دستیار واتسون من
مبدل فایل Exel به JSON خودم را نوشتم!
برای پروژه فعلی من با استفاده از IBM Watson Assistant، باید تعداد زیادی فایل JSON حاوی دیالوگ/مقصد/کلمات کلیدی… را به نمونه WA وارد کنم.
ابتدا سعی کردم چند برنامه یا وب سایت رایگان پیدا کنم تا این کار را برای من انجام دهند، اما ناگهان خواستم از انجام آن لذت ببرم. فهمیدم که نمونه های زیادی در پایتون نوشته شده اند و تصمیم گرفتم کد پایتون خودم را برای این کار بنویسم (من توسعه دهنده پایتون نیستم، هرگز 😆).
بنابراین من شروع به کپی/پیست کردن/تطبیق کد از سایتهای مختلف کردم و حدس بزنید. کار کرد 👍😅.
آخرت کد اصلی من است که برای من عالی کار می کند. من 2 ساعت کپی/پیست کردن/تطبیق/اشکال زدایی (از جمله نصب انجمن PyCharm/نسخه رایگان و نصب پیپ) و voilà را پشت سر گذاشتم!
import os
import jpype
path = "/mypath"
fname = []
excelCounter = 0
arrayExtension = ['.xlsx','.xls','.xlsm']
jpype.startJVM()
def convert2json(arg1, arg2):
from asposecells.api import Workbook
arg1 = path + "https://dev.to/" + arg1
workbook = Workbook(arg1+arg2)
jsonfile = arg1 + '.json'
workbook.save (jsonfile)
print("JSON file created = %s" % jsonfile)
for root, d_names, f_names in os.walk(path):
for f in f_names:
fname.append(os.path.join(root, f))
split_tup = os.path.splitext(f)
file_name = split_tup[0]
file_extension = split_tup[1]
if file_extension in arrayExtension:
excelCounter = excelCounter + 1
print("File to be converted = %s" % f)
print("excelCounter = %s" % excelCounter)
convert2json(file_name, file_extension)
jpype.shutdownJVM()
/mypath/Dev/PycharmProjects/exportExcel2JSON/xxxprj/bin/python /mypath/PycharmProjects/exportExcel2JSON/main.py
File to be converted = Current-Intent-Entity-Training3.xls
excelCounter = 1
JSON file created = /maypath/Current-Intent-Entity-Training3.json
File to be converted = Current-Intent-Entity-Training.xlsx
excelCounter = 2
JSON file created = /maypath/Current-Intent-Entity-Training.json
File to be converted = Current-Intent-Entity-Training2.xlsx
excelCounter = 3
JSON file created = /maypath/Current-Intent-Entity-Training2.json
Process finished with exit code 0
غذای آماده من؛
این خیلی تا کامل بودن فاصله داره، میدونم روی کارم کار میکنم😏
تعداد زیادی کتابخانه عالی و مفید برای پایتون وجود دارد
پایتون برای عملیات رشته و فایل عالی است (و مطمئناً موارد دیگر، من در مورد سطح بسیار ابتدایی خود صحبت می کنم)
در آینده بیشتر از این کار خواهم کرد 👍👊😆💪