如何使用Python编辑.xlsx文件的核心属性?

时间:2018-08-31 17:19:25

标签: python excel python-3.x fileinfo

我正在尝试填充Excel文件的某些核心属性字段(即主题,类别和标题字段),但找不到解决方法。

我能够使用docx模块使用.docx文件完成此操作,

doc = docx.Document(file)

name = doc.tables[1]._cells[43].text
data = doc.tables[0]._cells[1].text
numbers = re.findall('\d{9}', data)

doc.core_properties.title = numbers[0]
doc.core_properties.category = numbers[1]
doc.core_properties.subject = name

doc.save(file)

是否可以使用类似的方法来处理.xlsx文件,或者我不走运?

1 个答案:

答案 0 :(得分:2)

尝试使用openpyxl模块以交互方式获取和设置属性。

    import openpyxl
    fh = openpyxl.load_workbook("results.xlsx")

    obj = fh.properties   #To get old properties
    print obj   # print old properties

    fh.properties.title = "newTitle"          # To set title
    fh.properties.category = "newCategory"    # To set category
    fh.properties.subject = "newSubject"      # To set subject

    ##similarly you can set other fields ##

    new_obj = fh.properties   #Now get new properties
    print new_obj   # print new properties

    fh.save("results.xlsx")