python-docx richtext_python_doc 读写docx文件

python读写word文档有现成的库可以处理,在这里采用了 python-docx。

首先先安装

pip install python-docx

#!/usr/bin/env python

# -*- coding:utf-8 -*-

import sys, os

import django

sys.path.append('../')

os.environ['DJANGO_SETTINGS_MODULE'] = 'web.settings' #setting的目录

django.setup()

from django.apps import apps as django_apps

from utils.papergen.report.device_constructor import DeviceConstructor

type = sys.getfilesystemencoding()

# 设置默认编码

type = sys.getfilesystemencoding()

def main():

wd = DeviceConstructor.construct("docx")

wd.add_title({"data": u"人物档案", "level": 1}) #创建一级标题

all_apps = django_apps.get_models()

for app in all_apps:

wd.add_title({"data": [u"人员基本信息:%s 数据库表名称:%s" % (app._meta.label, app._meta.db_table)], "level": 1}) #创建标题

temp_list = [[u"字段名称", u"中文字段名称", u"字段类型"],]

for field in app._meta.fields:

# text = u"%s,%s,%s" % (unicode(field.verbose_name), field.name, field.get_internal_type())

# wd.add_text(text)

temp_list.append([unicode(field.verbose_name), field.name, field.get_internal_type()])

wd.add_table({'rows': len(temp_list), 'cols': 3, "data": temp_list}) # 创建表格

wd.save("person.docx") #保存

想要下载下来的话:

response = HttpResponse(content_type='text/docx')

response['Content-Disposition'] = 'attachment; filename=%s.docx' % pk

wd.save(response)

return response

参考:http://python-docx.readthedocs.io/en/latest/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值