(开源)XMind思维导图创建、解析、更新一站式解决方案

这是一个基于Python的XMind库,提供完整的创建、解析和更新XMind文件的解决方案。支持将XMind文件转换为Dict和JSON数据,包括画布、主题、图标、备注等元素的处理。适用于测试用例设计,可以与TestLink、Zentao系统集成,提升工作效率。项目包含自动化测试和发布功能,并持续维护更新。
摘要由CSDN通过智能技术生成

mind_mapping

XMind 是基于 Python 实现,提供了对 XMind思维导图进行创建、解析、更新的一站式解决方案!

一、安装方式

pip3 install XMind  

or

pip3 install xmind

二、版本升级

pip3 install -U XMind

三、使用方式

1、创建XMind文件
def gen_my_xmind_file():  
    # 1、如果指定的XMind文件存在,则加载,否则创建一个新的
    workbook = xmind.load("my.xmind")
    
    # 2、获取第一个画布(Sheet),默认新建一个XMind文件时,自动创建一个空白的画布
    sheet1 = workbook.getPrimarySheet()
    # 对第一个画布进行设计完善,具体参照下一个函数
    design_sheet1(sheet1)
    
    # 3、创建第二个画布
    gen_sheet2(workbook, sheet1)
    
    # 4、保存(如果指定path参数,另存为该文件名)
    xmind.save(workbook, path='test.xmind')

first sheet

def design_sheet1(sheet1):
    # ***** 第一个画布 *****
    sheet1.setTitle("first sheet")  # 设置画布名称

    # 获取画布的中心主题,默认创建画布时会新建一个空白中心主题
    root_topic1 = sheet1.getRootTopic()
    root_topic1.setTitle("root node")  # 设置主题名称

    # 创建一个子主题,并设置其名称
    sub_topic1 = root_topic1.addSubTopic()
    sub_topic1.setTitle("first sub topic")

    sub_topic2 = root_topic1.addSubTopic()
    sub_topic2.setTitle("second sub topic")

    sub_topic3 = root_topic1.addSubTopic()
    sub_topic3.setTitle("third sub topic")

    sub_topic4 = root_topic1.addSubTopic()
    sub_topic4.setTitle("fourth sub topic")

    # 除了新建子主题,还可以创建自由主题(注意:只有中心主题支持创建自由主题)
    detached_topic1 = root_topic1.addSubTopic(topics_type=TOPIC_DETACHED)
    detached_topic1.setTitle("detached topic")
    detached_topic1.setPosition(0, 30)

    # 创建一个子主题的子主题
    sub_topic1_1 = sub_topic1.addSubTopic()
    sub_topic1_1.setTitle("I'm a sub topic too")

second sheet

def gen_sheet2(workbook, sheet1):
    # ***** 设计第二个画布 *****
    sheet2 = workbook.createSheet()
    sheet2.setTitle("second sheet")

    # 获取画布的中心主题
    root_topic2 = sheet2.getRootTopic()
    root_topic2.setTitle("root node")

    # 使用另外一种方法创建子主题
    topic1 = TopicElement(ownerWorkbook=workbook)
    # 给子主题添加一个主题间超链接,通过指定目标主题ID即可,这里链接到第一个画布
    topic1.setTopicHyperlink(sheet1.getID())
    topic1.setTitle("redirection to the first sheet")

    topic2 = TopicElement(ownerWorkbook=workbook)
    topic2.setTitle("topic with an url hyperlink")
    # 给子主题添加一个URL超链接
    topic2.setURLHyperlink("https://github.com/zhuifengshen/xmind")

    topic3 = TopicElement(ownerWorkbook=workbook)
    topic3.setTitle("third node")
    # 给子主题添加一个备注(快捷键F4)
    topic3.setPlainNotes("notes for this topic")
    topic3.setTitle("topic with \n notes")

    topic4 = TopicElement(ownerWorkbook=workbook)
    # 给子主题添加一个文件超链接
    topic4.setFileHyperlink("logo.png")
    topic4.setTitle("topic with a file")

    topic1_1 = TopicElement(ownerWorkbook=workbook)
    topic1_1.setTitle("sub topic")
    # 给子主题添加一个标签(目前XMind软件仅支持添加一个,快捷键)
    topic1_1.addLabel("a label")

    topic1_1_1 = TopicElement(ownerWorkbook=workbook)
    topic1_1_1.setTitle("topic can add multiple markers")
    # 给子主题添加两个图标
    topic1_1_1.addMarker(MarkerId.starBlue)
    topic1_1_1.addMarker(MarkerId.flagGreen)

    topic2_1 = TopicElement(ownerWorkbook=workbook)
    topic2_1.setTitle("topic can add multiple comments")
    # 给子主题添加一个批注(评论)
    topic2_1.addComment("I'm a comment!")
    topic2_1.addComment(content="Hello comment!", author='devin')

    # 将创建好的子主题添加到其父主题下
    root_topic2.addSubTopic(topic1)
    root_topic2.addSubTopic(topic2)
    root_topic2.addSubTopic(topic3)
    root_topic2.addSubTopic(topic4)
    topic1.addSubTopic(topic1_1)
    topic2.addSubTopic(topic2_1)
    topic1_1.addSubTopic(topic1_1_1)

    # 给中心主题下的每个子主题添加一个优先级图标
    topics = root_topic2.getSubTopics()
    for index, topic in enumerate(topics):
        topic.addMarker("priority-" + str(index + 1))

    # 添加一个主题与主题之间的联系
    sheet2.createRelationship(topic1.getID(), topic2.get
web前端是指通过使用HTML、CSS、JavaScript等技术,对网站的用户界面进行设计和开发的一种角色。他们负责将网页设计师设计的页面转化为浏览器可读的代码,并负责页面的交互和动态效果的实现。 XMind思维导图是一种用于图形化展示思维逻辑关系的工具。在web前端工作中,使用XMind思维导图文件可以起到以下几个方面的作用: 1. 项目需求分析:通过XMind思维导图,前端开发人员可以将项目的需求进行分析和梳理,将各个功能模块之间的关系清晰地呈现出来。这有助于更好地理解和把握项目的需求。 2. 页面架构规划:在前端开发过程中,XMind思维导图可以用来规划和设计网站的整体架构。通过绘制页面之间的层级结构和交互逻辑,可以帮助开发者更好地组织和安排页面的布局和内容展示。 3. 功能模块划分:在较大规模的web项目中,前端开发人员需要将不同的功能模块划分出来,分配给不同的开发人员进行开发。通过XMind思维导图,可以对功能模块进行分组和划分,从而方便团队成员之间的协作和沟通。 4. 代码逻辑设计:在前端开发中,代码的逻辑清晰与否直接影响到项目的质量和开发效率。使用XMind思维导图可以帮助前端开发人员设计和表达代码的逻辑关系,更好地组织和优化代码结构。 总之,XMind思维导图文件在web前端的工作中起到了项目需求分析、页面架构规划、功能模块划分和代码逻辑设计等多方面的作用。它可以帮助开发者更好地理解、规划和组织前端开发工作,提高开发效率和项目质量。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值