我正在寻找一种从Word文件中提取/抓取数据到数据库的方法。由于历史和惯性,我们公司记录与客户的会议纪要大多以MS Word文件的形式呈现。
我希望能够将这些会议纪要中的行动项提取到数据库中,以便我们可以从Web界面访问它们,将其转化为任务并在完成后更新它们。
哪种方式最好:
1. 在Word内部使用VBA宏创建CSV文件,然后上传到数据库? 2. 在Word中使用具有DB连接的VBA宏(如何从VBA连接到MySQL)? 3. 使用win32com的Python脚本,然后上传到数据库?
对我来说,最后一个方案很有吸引力,因为Web界面是使用Django构建的,但我从未使用过win32com或尝试过用python脚本编写Word。
编辑:我已经开始使用VBA提取文本,因为它使处理Word对象模型变得更容易。不过,我遇到了一个问题-所有文本都在表格中,当我从所需单元格中提取字符串时,每个字符串的末尾都会出现奇怪的小方框字符。我的代码看起来像:
小的控制字符框是怎么回事?是从Word传来的某种字符代码吗?
我希望能够将这些会议纪要中的行动项提取到数据库中,以便我们可以从Web界面访问它们,将其转化为任务并在完成后更新它们。
哪种方式最好:
1. 在Word内部使用VBA宏创建CSV文件,然后上传到数据库? 2. 在Word中使用具有DB连接的VBA宏(如何从VBA连接到MySQL)? 3. 使用win32com的Python脚本,然后上传到数据库?
对我来说,最后一个方案很有吸引力,因为Web界面是使用Django构建的,但我从未使用过win32com或尝试过用python脚本编写Word。
编辑:我已经开始使用VBA提取文本,因为它使处理Word对象模型变得更容易。不过,我遇到了一个问题-所有文本都在表格中,当我从所需单元格中提取字符串时,每个字符串的末尾都会出现奇怪的小方框字符。我的代码看起来像:
sFile = "D:\temp\output.txt"
fnum = FreeFile
Open sFile For Output As #fnum
num_rows = Application.ActiveDocument.Tables(2).Rows.Count
For n = 1 To num_rows
Descr = Application.ActiveDocument.Tables(2).Cell(n, 2).Range.Text
Assign = Application.ActiveDocument.Tables(2).Cell(n, 3).Range.Text
Target = Application.ActiveDocument.Tables(2).Cell(n, 4).Range.Text
If Target = "" Then
ExportText = ""
Else
ExportText = Descr & Chr(44) & Assign & Chr(44) & _
Target & Chr(13) & Chr(10)
Print #fnum, ExportText
End If
Next n
Close #fnum
小的控制字符框是怎么回事?是从Word传来的某种字符代码吗?