forked from 2liang/AutoBuildDocFromDB
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.py
56 lines (45 loc) · 1.34 KB
/
build.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# -*- coding:utf-8 -*-
# Author : 我才是二亮 (unstring@163.com)
import sys, os.path
from FileParserClass import FileParser
from MarkdownBuildClass import MarkDownBuild
if __name__ == '__main__':
md_dir = './md/'
content = ''
file = ''
if (len(sys.argv) < 2):
exit('请输入SQL文件路径')
dir = sys.argv[1]
try:
file = open(dir)
except IOError, e:
exit(e)
try:
content = file.read()
except:
exit('文件读取失败')
finally:
file.close()
file_parser = FileParser()
# 将文件分离为每张表
table_list = file_parser.separatTable(content)
# 解析出表中表名及表详情
table_name = file_parser.parserTableName(table_list)
# 解析出每张表字段情况并与表名表详情组合
table_data = file_parser.parserColumn(table_list, table_name)
markdown_build = MarkDownBuild()
text = markdown_build.buildMarkdown(table_data)
file_name = os.path.basename(dir).split('.')[0] + '.md'
# 写文件
file_obj = ''
try:
file_obj = open(md_dir + file_name, 'w')
except:
exit('文件创建失败')
try:
file_obj.write(text)
except:
exit('文件写入失败')
finally:
file_obj.close()
print '数据库文档已经成功创建,文件在md目录下.'