CN111414331B - 在线协同知识库的文档导入方法、装置、存储介质及设备 - Google Patents
在线协同知识库的文档导入方法、装置、存储介质及设备 Download PDFInfo
- Publication number
- CN111414331B CN111414331B CN202010223361.8A CN202010223361A CN111414331B CN 111414331 B CN111414331 B CN 111414331B CN 202010223361 A CN202010223361 A CN 202010223361A CN 111414331 B CN111414331 B CN 111414331B
- Authority
- CN
- China
- Prior art keywords
- document
- knowledge base
- original document
- target
- online collaborative
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/113—Details of archiving
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/116—Details of conversion of file system types or formats
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Document Processing Apparatus (AREA)
Abstract
本公开实施例公开了在线协同知识库的文档导入方法、装置、存储介质及设备。该方法包括:获取第一在线协同知识库中的预设空间的打包文件,对打包文件进行解析,并获取预设空间的文档层级关系信息,将打包文件中包含的原始文档转换为目标格式的目标文档,目标格式为满足第二在线协同知识库要求的文档格式,按照文档层级关系信息将目标文档挂载至第二在线协同知识库中。本发明实施例通过采用上述技术方案,可以将第一在线协同知识库中某个空间内的文档按照原有的文档层级关系导入第二在线协同知识库中,丰富在线协同知识库的功能。
Description
技术领域
本公开实施例涉及计算机技术领域,尤其涉及在线协同知识库的文档导入方法、装置、存储介质及设备。
背景技术
随着互联网技术的快速发展,不同用户之间的信息分享更加方便快捷。用户可以使用在线文档来记录以及分享内容。为了便于对在线文档进行管理,一些知识管理与协同的应用应运而生,这里统称为在线协同知识库。
在线协同知识库为团队成员提供协作环境,团队成员可以分享内容,也可以协同编写文档和管理项目等。在线协同知识库中一般可创建不限数量的空间,空间是页面的集合,每个页面对应一个文档,空间中的页面一般按照父子关系组织成树状关系,方便对空间内容进行有效管理。目前,市面上存在一些通用的在线协同知识库,如Confluence,Confluence是一个专业的企业知识管理与协同软件,可以用来团队之间进行信息分享,是全球范围内比较通用的一个软件。然而,在实际应用时,许多企业可能还会设计自己的在线协同知识库,不同的在线协同知识库可能具备不同的优点,所以会遇到一些场景,需要将一个在线协同知识库的空间内容迁移到另一个在线协同知识库中,因此,亟需一种在线协同知识库的文档导入方案来实现上述功能。
发明内容
本公开实施例提供了在线协同知识库的文档导入方法、装置、存储介质及设备,可以实现将一个在线协同知识库的空间内文档导入到另一个在线协同知识库中。
第一方面,本公开实施例提供了一种在线协同知识库的文档导入方法,包括:
获取第一在线协同知识库中的预设空间的打包文件;
对所述打包文件进行解析,并获取所述预设空间的文档层级关系信息;
将所述打包文件中包含的原始文档转换为目标格式的目标文档,所述目标格式为满足第二在线协同知识库要求的文档格式;
按照所述文档层级关系信息将所述目标文档挂载至所述第二在线协同知识库中。
第二方面,本公开实施例提供了一种在线协同知识库的文档导入装置,包括:
打包文件获取模块,用于获取第一在线协同知识库中的预设空间的打包文件;
层级关系获取模块,用于对所述打包文件进行解析,并获取所述预设空间的文档层级关系信息;
文档转换模块,用于将所述打包文件中包含的原始文档转换为目标格式的目标文档,所述目标格式为满足第二在线协同知识库要求的文档格式;
文档挂载模块,用于按照所述文档层级关系信息将所述目标文档挂载至所述第二在线协同知识库中。
第三方面,本公开实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本公开实施例提供的在线协同知识库的文档导入方法。
第四方面,本公开实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本公开实施例提供的在线协同知识库的文档导入方法。
本公开实施例中提供的在线协同知识库的文档导入方案,获取第一在线协同知识库中的预设空间的打包文件,对打包文件进行解析,并获取预设空间的文档层级关系信息,将打包文件中包含的原始文档转换为满足第二在线协同知识库要求的目标格式的目标文档,再按照文档层级关系信息将目标文档挂载至第二在线协同知识库中。通过采用上述技术方案,可以将第一在线协同知识库中某个空间内的文档按照原有的文档层级关系导入第二在线协同知识库中,丰富在线协同知识库的功能。
附图说明
图1为本公开实施例一提供的一种在线协同知识库的文档导入方法的流程示意图;
图2为本公开实施例二提供的一种在线协同知识库的文档导入方法的流程示意图;
图3为本公开实施例三提供的一种在线协同知识库的文档导入方法的流程示意图;
图4为本公开实施例四提供的一种在线协同知识库的文档导入装置的结构框图;
图5为本公开实施例五提供的一种电子设备的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
下述各实施例中,每个实施例中同时提供了可选特征和示例,实施例中记载的各个特征可进行组合,形成多个可选方案,不应将每个编号的实施例仅视为一个技术方案。
实施例一
图1为本公开实施例一提供的一种在线协同知识库的文档导入方法的流程示意图,该方法可以由在线协同知识库的文档导入装置执行,其中该装置可由软件和/或硬件实现,一般可集成在电子设备中。如图1所示,该方法包括:
步骤101、获取第一在线协同知识库中的预设空间的打包文件。
本公开实施例中,第一在线协同知识库可以是任意一个在线协同知识库,例如Confluence。第一在线协同知识库中可以包含一个或多个空间,空间是页面的集合,每个页面对应一个文档,空间中的页面一般按照父子关系组织成树状关系。预设空间可以包括第一在线协同知识库中的全部或部分空间,可以是一个空间或多个空间的集合。空间可以采用身份标识(Identification,ID)进行区分,每个空间都有唯一的空间ID。空间中的文档也可以采用ID进行区分,每个文档都有唯一的文档ID。所述电子设备例如可以是第二在线协同知识库对应的后台服务器。第二在线协同知识库为文档导入的目标在线协同知识库,可以是任意一个与第一在线协同知识库不相同的在线协同知识库。
示例性的,可以将第一在线协同知识库中的预设空间按照预设打包方式进行打包,得到预设空间对应的打包文件。具体的预设打包方式以及打包文件的格式可以根据第一在线协同知识库的配置确定,本公开实施例不做限定。以Confluence为例,可以将Confluence中的预设空间按照超级文本标记语言(HyperText Markup Language,HTML)格式导出为压缩包文件,如zip格式的压缩包文件。
本步骤中,打包文件可以在线获取,也可以从其他设备导入当前的电子设备,具体可以在用户操作下完成或由预设程序自动完成。
步骤102、对所述打包文件进行解析,并获取所述预设空间的文档层级关系信息。
示例性的,可以根据打包文件的具体格式采取相应的解析方式。可选的,在对打包文件进行解析时,可以判断打包文件是否为无效文件,若是,则返回解析失败,并结束流程。
示例性的,在对打包文件进行解析后,可以判断打包文件中是否包含目录文件,该目录文件中记录了预设空间的文档层级关系信息,若不包含,则返回解析失败,并结束流程。其中,若按照HTML格式导出打包文件,则目录文件可以是index.html文件。
示例性的,可以对目录文件进行解析,并获取预设空间的文档层级关系信息,若解析不成功,也可返回解析失败,并结束流程。
步骤103、将所述打包文件中包含的原始文档转换为目标格式的目标文档,所述目标格式为满足第二在线协同知识库要求的文档格式。
可选的,本步骤也可在获取预设空间的文档层级关系信息之前进行。
示例性的,预设空间中可以包含一个或多个页面,所以打包文件中可以包含一个或多个原始文档,当包含多个原始文档时,可以逐一或并行地将多个原始文档转换为目标格式的目标文档。
示例性的,原始文档的格式可以与预设打包方式相匹配,如上述举例,原始文档可以是html文件,将html文件解析成目标格式文档,得到目标文档。需要说明的是,若目录文件是index.html文件,则可以将打包文件中除index.html文件以外的html文件视为原始文件。
步骤104、按照所述文档层级关系信息将所述目标文档挂载至所述第二在线协同知识库中。
示例性的,空间中的页面一般按照父子关系组织成树状关系,文档层级关系信息用于表示文档之间的关联关系,这样,按照文档层级关系信息将目标文档挂载至第二在线协同知识库中,就可以保持原有的目录结构,从而提升文档导入的还原度。
本公开实施例中提供的在线协同知识库的文档导入方法,获取第一在线协同知识库中的预设空间的打包文件,对打包文件进行解析,并获取预设空间的文档层级关系信息,将打包文件中包含的原始文档转换为满足第二在线协同知识库要求的目标格式的目标文档,再按照文档层级关系信息将目标文档挂载至第二在线协同知识库中。通过采用上述技术方案,可以按照第一在线协同知识库中某个空间内的文档按照原有的文档层级关系导入第二在线协同知识库中,丰富在线协同知识库的功能。
实施例二
图2为本公开实施例二提供的一种在线协同知识库的文档导入方法的流程示意图,本公开实施例以上述实施例中各个可选方案为基础进行优化,具体的,该方法包括如下步骤:
步骤201、获取第一在线协同知识库中的预设空间的打包文件。
步骤202、对所述打包文件进行解析,并获取所述预设空间的文档层级关系信息。
步骤203、当所述打包文件中包含的原始文档中存在附件时,获取并保存对应的附件内容。
示例性的,在线文档可以理解为一种可以让用户进行在线编辑的文档,例如可以视为在线的word文档。在线文档中,可以插入其他内容,如图片文件、表格文件以及其他类型的文件等等,将这些插入内容统称为附件。由于附件一般是单独存储的,在在线文档页面中通过链接等关联关系对附件进行访问,因此,为了更完全地对预设空间内的文档进行导入,需要对附件进行单独处理。
本步骤中,在确定原始文档中存在附件时,获取并保存对应的附件内容,以便导入第二在线协同知识库后的文档能够正常引用附件内容。
可选的,本步骤可具体包括:扫描所述打包文件中包含的原始文档中插入的附件;在扫描到附件时,获取所扫描到的附件的属性信息,记录所述原始文档和所述属性信息的映射关系,其中,所述属性信息包括存储路径和名称;依据所述映射关系获取并保存所述原始文档对应的附件内容。这样设置的好处在于,能够依据映射关系准确地获取原始文档对应的附件内容,并维持原始文档与所保存的附件内容的对应关系。
示例性的,利用第一预设正则表达式扫描所述打包文件中包含的原始文档中插入的附件,其中,所述第一预设正则表达式依据所述原始文档的页面布局规律确定。这样设置的好处在于,能够快速准确地扫描到原始文件中的附件。一般的,对于一个在线协同知识库来说,页面布局通常会遵循知识库的配置,例如,附件会被插入页面的底部等。在确定了原始文档的页面布局规律后,便可依据该规律构造正则表达式,用于扫描原始文档中是否插入了附件。
一般的,在线协同知识库中会将附件单独存储在一个文件夹中,例如“attachments/”文件夹。在当前原始文档中扫描到附件时,获取附件的存储路径和名称,并可到存储附件的文件夹下获取到当前原始文档对应的附件内容。当多个原始文档中存在附件时,可以记录各原始文档与对应的附件的属性信息的映射关系,最后再批量依据映射关系进行附件内容的获取及保存。
示例性的,在对所获取的附件内容进行保存时,可以将附件内容保存至第二在线协同知识库规定的文件夹下,该文件夹可以位于电子设备本地,也可以位于与该电子设备存在关联关系的其他设备中,如指定数据库所在的设备中。
步骤204、更新所述原始文档与所述附件内容的关联关系,得到经过处理后的原始文档。
示例性的,本步骤中对原始文档进行预处理,由于在前述步骤中保存了原始文档对应的附件内容,所以需要更新原始文档与附件内容的关联关系,以便在第二在线协同知识库中打开目标文档时,能够正常关联到对应的附件内容。
可选的,在所述获取并保存对应的附件内容之后,还包括:记录所保存的附件内容对应的下载地址。所述更新所述原始文档与所述附件内容的关联关系,包括:将所述原始文档中的附件的链接方式替换成对应的下载地址的超链接方式。这样设置的好处在于,将附件的链接方式替换成对应的下载地址的超链接方式,从而在第二在线协同知识库中打开目标文档时,能够以附件内容的类型来打开或显示附件内容。例如,附件内容为一张图片,那么在第二在线协同知识库中打开目标文档时,可以对该图片的内容进行显示,方便用户更加直观地查看附件内容。
可选的,在更新所述原始文档与所述附件内容的关联关系之前,还可包括:去除所述原始文档中的头部信息和尾部信息。这样设置的好处在于,一般的,在线协同知识库中文档的头部信息和尾部信息是与该在线协同知识库的配置相关联的内容,对于其他在线协同知识库而言是无用信息,因此将这部分信息去除,简化文件格式的转换流程,降低转换出错的概率。示例性的,可以利用第二正则表达式去除原始文档中的头部信息,利用第三正则表达式去除原始文档的尾部信息。
步骤205、将所述经过处理后的原始文档转换为目标格式的目标文档。
步骤206、按照所述文档层级关系信息将所述目标文档挂载至所述第二在线协同知识库中。
本公开实施例提供的在线协同知识库的文档导入方法,当打包文件中包含的原始文档中存在附件时,获取并保存对应的附件内容,更新原始文档与附件内容的关联关系,再将经过处理后的原始文档转换为目标格式的目标文档,这样在完成导入后,从第二在线协同知识库中打开对应的文档,就能够正常查看附件内容,也即支持附件导入功能,避免导入过程中出现内容损失的情况发生。
在上述各实施例基础上,在所述将所述打包文件中包含的原始文档转换为目标格式的目标文档之前,还包括:在预设数据库中创建所述打包文件中包含的原始文档对应的处理任务,并初始化所述处理任务的任务状态;在将所述打包文件中包含的原始文档转换为目标格式的目标文档的过程中,根据当前处理阶段的处理结果对所述任务状态进行更新;当检测到所述处理任务出现异常时,从当前任务状态对应的处理阶段开始重新启动所述处理任务。这样设置的好处在于,在任务处理过程中,若出现网络异常等问题时,可以在失败的位置继续进行任务处理,提升文档导入效率。预设数据库的类型不作具体限定,例如可以是关系型数据库管理系统MySQL。对于每个原始文档,可单独创建对应的处理任务,方便对每个原始文档的任务处理过程进行有针对性的追踪。
在上述各实施例基础上,在所述获取第一在线协同知识库中的预设空间的打包文件之前,还包括:获取第二在线协同知识库中的目标目录节点。相应的,所述按照所述文档层级关系信息将所述目标文档挂载至所述第二在线协同知识库中,包括:按照所述文档层级关系信息将所述目标文档挂载至所述目标目录节点下。这样设置的好处在于,可以支持在指定位置挂载目标文档。目标目录节点可以由电子设备自动确定,也可以由用户指定。例如,当用户在第二在线协同知识库的目录结构下的第一目录节点处选择上传打包文件,则将第一目录节点确定为目标目录节点。
在上述各实施例基础上,在获取第一在线协同知识库中的预设空间的打包文件之后,还可包括:创建打包文件对应的总任务,并向前端反馈总任务标识,所述总任务标识用于指示所述前端根据所述总任务标识对所述总任务的执行状态进行轮询操作;根据所述总任务的执行状态对所述轮询操作进行响应。这样设置的好处在于,文档导入过程是一个比较耗时的过程,后台服务器将总任务标识返回给前端后,前端可以定时通过该总任务标识去请求后台服务,后台可以根据任务ID告前端当前任务的状态,如正在解析、解析完成和解析失败等。
实施例三
图3为本公开实施例三提供的一种在线协同知识库的文档导入方法的流程示意图,本公开实施例以上述实施例中各个可选方案为基础进行优化。
具体的,该方法可包括:
步骤301、获取wiki中的目标目录节点。
其中,本公开实施例中的第一在线协同知识库可以是Confluence,第二在线协同知识库可以是其他的在线协同知识库,可简称wiki。可以预先将原有的Confluence空间按照html格式导出为zip文件。用户可以在wiki的目录结构中点击上传zip文件,并指定该zip文件解析后挂载的位置,也即目标目录节点。
步骤302、获取Confluence中的预设空间的打包文件。
示例性的,后台收到前端传过来的zip文件包后,将zip文件包保存后,生成一个解析任务,并且将任务ID返回给前端,前端收到返回的任务ID后,可以进行轮询操作。例如,后端将ID返回给前端后,前端可以定时通过该ID去请求后台服务,后台会根据任务ID告前端当前任务的状态,如正在解析、解析完成或解析失败等。随后,后台可以开始执行解析任务逻辑。
步骤303、对打包文件进行解析。
示例性的,可以先确定zip文件是否解析成功,如果是无效的zip文件,则返回解析失败,否则进行下一步。然后,可以检查zip文件中是否有index.html文件(目录文件),如果没有,则表示该文件格式不是Confluence对应的格式,返回解析失败,否则进行下一步。
步骤304、获取预设空间的文档层级关系信息。
示例性的,解析index.html文件获取文档之间的层级关系,如果解析不成功则返回失败,否则进行下一步。层级关系标识的概念是文档之间的关联关系,最终的文档关系是一个树形结构。
步骤305、读取打包文件下的原始文档,针对每个原始文档生成一个wiki文档记录,并存放在预设数据库中,将wiki文档记录对应的任务状态置位初始状态1。
其中,打包文件下除了index.html文件以外的html文件为原始文档。
步骤306、再次读取原始文档,通过第一正则表达式扫描原始文档中插入的附件,获取附件的路径以及名称,并记录原始文档与附件之间的映射关系。
示例性的,通过本步骤,可以知道某个html文件中是否插入了附件,并且能够知道具体的附件所在的路径。示例性的,第一正则表达式可以是"<a href=\"attachments/(\\S+)/(\\S+)\">(.+)</a>"。
步骤307、扫描打包文件下附件文件夹,根据附件的路径获取附件内容并保存,在预设数据库中记录附件内容的路径和对应的下载地址。
示例性的,可以扫描zip下"attachments/"文件夹下的内容,因为confluece格式中附件都存放在该文件夹下面,获取每一个附件的路径,然后将文件内容保存后,在mysql中生成一条记录,记录该附件的路径以及对应的下载地址。通过这一步将所有的附件都上传保存起来,并且将相关信息记录到了mysql中,如果任务重试,可以先判断该附件是否已经上传过,如果已上传就不需要处理,否则就执行上传逻辑。
步骤308、再次读取原始文档,通过第二正则表达式去除原始文档中的头部信息,通过第三正则表达式去除原始文档中的头部信息。
示例性的,第二正则表达式可以是"<div id=\"breadcrumb-section\">[\\s\\S]*?</div>",第二正则表达式可以是"<section class=\"footer-body\">[\\s\\S]*?</section>"。
步骤309、当确定原始文档中存在附件时,将原始文档中的附件的链接方式替换成对应的下载地址的超链接方式,并将加工好的原始文档上传至预设数据库中,将任务状态置位2。
步骤310、将已上传的原始文档解析成wiki格式的目标文档,将任务状态置位3。
步骤311、按照文档层级关系信息将目标文档挂载至目标目录节点下,将任务状态置位4。
在上述步骤中,如果中间某个过程出错,则可以从过程中重新开始,因为预设数据库中保存了对应的任务状态,可以通任务状态知道该任务具体出错的步骤,从而可以从已经成功的阶段继续执行。
本公开实施例提供的在线协同知识库的文档导入方法,可以在用户操作下上传从Confluence导出的压缩包,通过对压缩包进行解析,将Confluence中指定空间的文档导入到wiki空间中,并按照Confluence原有目录结构挂载,支持插入的图片等附件的同步导入,还能够支持任务重试,处理过程中如果遇到网络问题退出后,下次启动任务会在上次失败的地方继续执行,丰富了在线协同知识库的功能。
实施例四
图4为本公开实施例四提供的一种在线协同知识库的文档导入装置的结构框图,该装置可由软件和/或硬件实现,一般可集成在电子设备中,可通过执行在线协同知识库的文档导入方法来进行在线协同知识库的文档导入。如图4所示,该装置包括:
打包文件获取模块401,用于获取第一在线协同知识库中的预设空间的打包文件;
层级关系获取模块402,用于对所述打包文件进行解析,并获取所述预设空间的文档层级关系信息;
文档转换模块403,用于将所述打包文件中包含的原始文档转换为目标格式的目标文档,所述目标格式为满足第二在线协同知识库要求的文档格式;
文档挂载模块404,用于按照所述文档层级关系信息将所述目标文档挂载至所述第二在线协同知识库中。
本公开实施例中提供的在线协同知识库的文档导入装置,获取第一在线协同知识库中的预设空间的打包文件,对打包文件进行解析,并获取预设空间的文档层级关系信息,将打包文件中包含的原始文档转换为满足第二在线协同知识库要求的目标格式的目标文档,再按照文档层级关系信息将目标文档挂载至第二在线协同知识库中。通过采用上述技术方案,可以将第一在线协同知识库中某个空间内的文档按照原有的文档层级关系导入第二在线协同知识库中,丰富在线协同知识库的功能。
可选的,所述将所述打包文件中包含的原始文档转换为目标格式的目标文档,包括:
当所述打包文件中包含的原始文档中存在附件时,获取并保存对应的附件内容;
更新所述原始文档与所述附件内容的关联关系,得到经过处理后的原始文档;
将所述经过处理后的原始文档转换为目标格式的目标文档。
可选的,该装置还包括:
下载地址记录模块,用于在所述获取并保存对应的附件内容之后,记录所保存的附件内容对应的下载地址;
所述更新所述原始文档与所述附件内容的关联关系,包括:
将所述原始文档中的附件的链接方式替换成对应的下载地址的超链接方式。
可选的,所述当所述打包文件中包含的原始文档中存在附件时,获取并保存对应的附件内容,包括:
扫描所述打包文件中包含的原始文档中插入的附件;
在扫描到附件时,获取所扫描到的附件的属性信息,记录所述原始文档和所述属性信息的映射关系,其中,所述属性信息包括存储路径和名称;
依据所述映射关系获取并保存所述原始文档对应的附件内容。
可选的,所述扫描所述打包文件中包含的原始文档中插入的附件,包括:
利用第一预设正则表达式扫描所述打包文件中包含的原始文档中插入的附件,其中,所述第一预设正则表达式依据所述原始文档的页面布局规律确定。
可选的,该装置还包括:
任务状态管理模块,用于在所述将所述打包文件中包含的原始文档转换为目标格式的目标文档之前,在预设数据库中创建所述打包文件中包含的原始文档对应的处理任务,并初始化所述处理任务的任务状态;在将所述打包文件中包含的原始文档转换为目标格式的目标文档的过程中,根据当前处理阶段的处理结果对所述任务状态进行更新;
任务重启模块,用于在检测到所述处理任务出现异常时,从当前任务状态对应的处理阶段开始重新启动所述处理任务。
可选的,该装置还包括:
目标目录节点获取模块,用于在所述获取第一在线协同知识库中的预设空间的打包文件之前,获取第二在线协同知识库中的目标目录节点;
相应的,所述按照所述文档层级关系信息将所述目标文档挂载至所述第二在线协同知识库中,包括:
按照所述文档层级关系信息将所述目标文档挂载至所述目标目录节点下。
实施例五
下面参考图5,其示出了适于用来实现本公开实施例的电子设备500的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图5示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图5所示,电子设备500可以包括处理装置(例如中央处理器、图形处理器等)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储装置508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有电子设备500操作所需的各种程序和数据。处理装置501、ROM502以及RAM503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
通常,以下装置可以连接至I/O接口505:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置506;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置507;包括例如磁带、硬盘等的存储装置508;以及通信装置509。通信装置509可以允许电子设备500与其他设备进行无线或有线通信以交换数据。虽然图5示出了具有各种装置的电子设备500,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置509从网络上被下载和安装,或者从存储装置508被安装,或者从ROM 502被安装。在该计算机程序被处理装置501执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取第一在线协同知识库中的预设空间的打包文件;对所述打包文件进行解析,并获取所述预设空间的文档层级关系信息;将所述打包文件中包含的原始文档转换为目标格式的目标文档,所述目标格式为满足第二在线协同知识库要求的文档格式;按照所述文档层级关系信息将所述目标文档挂载至所述第二在线协同知识库中。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该模块本身的限定,例如,裁剪框显示模块还可以被描述为“确定待裁剪的原始图片,进入裁剪状态并显示裁剪框的模块”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
根据本公开的一个或多个实施例,提供了一种在线协同知识库的文档导入方法,包括:
获取第一在线协同知识库中的预设空间的打包文件;
对所述打包文件进行解析,并获取所述预设空间的文档层级关系信息;
将所述打包文件中包含的原始文档转换为目标格式的目标文档,所述目标格式为满足第二在线协同知识库要求的文档格式;
按照所述文档层级关系信息将所述目标文档挂载至所述第二在线协同知识库中。
进一步的,所述将所述打包文件中包含的原始文档转换为目标格式的目标文档,包括:
当所述打包文件中包含的原始文档中存在附件时,获取并保存对应的附件内容;
更新所述原始文档与所述附件内容的关联关系,得到经过处理后的原始文档;
将所述经过处理后的原始文档转换为目标格式的目标文档。
进一步的,在所述获取并保存对应的附件内容之后,还包括:
记录所保存的附件内容对应的下载地址;
所述更新所述原始文档与所述附件内容的关联关系,包括:
将所述原始文档中的附件的链接方式替换成对应的下载地址的超链接方式。
进一步的,所述当所述打包文件中包含的原始文档中存在附件时,获取并保存对应的附件内容,包括:
扫描所述打包文件中包含的原始文档中插入的附件;
在扫描到附件时,获取所扫描到的附件的属性信息,记录所述原始文档和所述属性信息的映射关系,其中,所述属性信息包括存储路径和名称;
依据所述映射关系获取并保存所述原始文档对应的附件内容。
进一步的,所述扫描所述打包文件中包含的原始文档中插入的附件,包括:
利用第一预设正则表达式扫描所述打包文件中包含的原始文档中插入的附件,其中,所述第一预设正则表达式依据所述原始文档的页面布局规律确定。
进一步的,在所述将所述打包文件中包含的原始文档转换为目标格式的目标文档之前,还包括:
在预设数据库中创建所述打包文件中包含的原始文档对应的处理任务,并初始化所述处理任务的任务状态;
在将所述打包文件中包含的原始文档转换为目标格式的目标文档的过程中,根据当前处理阶段的处理结果对所述任务状态进行更新;
当检测到所述处理任务出现异常时,从当前任务状态对应的处理阶段开始重新启动所述处理任务。
进一步的,在所述获取第一在线协同知识库中的预设空间的打包文件之前,还包括:
获取第二在线协同知识库中的目标目录节点;
相应的,所述按照所述文档层级关系信息将所述目标文档挂载至所述第二在线协同知识库中,包括:
按照所述文档层级关系信息将所述目标文档挂载至所述目标目录节点下。
根据本公开的一个或多个实施例,提供了一种在线协同知识库的文档导入装置,包括:
打包文件获取模块,用于获取第一在线协同知识库中的预设空间的打包文件;
层级关系获取模块,用于对所述打包文件进行解析,并获取所述预设空间的文档层级关系信息;
文档转换模块,用于将所述打包文件中包含的原始文档转换为目标格式的目标文档,所述目标格式为满足第二在线协同知识库要求的文档格式;
文档挂载模块,用于按照所述文档层级关系信息将所述目标文档挂载至所述第二在线协同知识库中。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
Claims (9)
1.一种在线协同知识库的文档导入方法,其特征在于,包括:
获取第一在线协同知识库中的预设空间的打包文件;
对所述打包文件进行解析,并获取所述预设空间的文档层级关系信息;
将所述打包文件中包含的原始文档转换为目标格式的目标文档,所述目标格式为满足第二在线协同知识库要求的文档格式;
按照所述文档层级关系信息将所述目标文档挂载至所述第二在线协同知识库中;
所述将所述打包文件中包含的原始文档转换为目标格式的目标文档,包括:
当所述打包文件中包含的原始文档中存在附件时,获取并保存对应的附件内容;
更新所述原始文档与所述附件内容的关联关系,得到经过处理后的原始文档;
将所述经过处理后的原始文档转换为目标格式的目标文档;
所述更新所述原始文档与所述附件内容的关联关系,包括:
将所述原始文档中的附件的链接方式替换成对应的下载地址的超链接方式。
2.根据权利要求1所述的方法,其特征在于,在所述获取并保存对应的附件内容之后,还包括:
记录所保存的附件内容对应的下载地址。
3.根据权利要求1所述的方法,其特征在于,所述当所述打包文件中包含的原始文档中存在附件时,获取并保存对应的附件内容,包括:
扫描所述打包文件中包含的原始文档中插入的附件;
在扫描到附件时,获取所扫描到的附件的属性信息,并记录所述原始文档和所述属性信息的映射关系,其中,所述属性信息包括存储路径和名称;
依据所述映射关系获取并保存所述原始文档对应的附件内容。
4.根据权利要求3所述的方法,其特征在于,所述扫描所述打包文件中包含的原始文档中插入的附件,包括:
利用第一预设正则表达式扫描所述打包文件中包含的原始文档中插入的附件,其中,所述第一预设正则表达式依据所述原始文档的页面布局规律确定。
5.根据权利要求1所述的方法,其特征在于,在所述将所述打包文件中包含的原始文档转换为目标格式的目标文档之前,还包括:
在预设数据库中创建所述打包文件中包含的原始文档对应的处理任务,并初始化所述处理任务的任务状态;
在将所述打包文件中包含的原始文档转换为目标格式的目标文档的过程中,根据当前处理阶段的处理结果对所述任务状态进行更新;
当检测到所述处理任务出现异常时,从当前任务状态对应的处理阶段开始重新启动所述处理任务。
6.根据权利要求1-5任一所述的方法,其特征在于,在所述获取第一在线协同知识库中的预设空间的打包文件之前,还包括:
获取第二在线协同知识库中的目标目录节点;
相应的,所述按照所述文档层级关系信息将所述目标文档挂载至所述第二在线协同知识库中,包括:
按照所述文档层级关系信息将所述目标文档挂载至所述目标目录节点下。
7.一种在线协同知识库的文档导入装置,其特征在于,包括:
打包文件获取模块,用于获取第一在线协同知识库中的预设空间的打包文件;
层级关系获取模块,用于对所述打包文件进行解析,并获取所述预设空间的文档层级关系信息;
文档转换模块,用于将所述打包文件中包含的原始文档转换为目标格式的目标文档,所述目标格式为满足第二在线协同知识库要求的文档格式;
文档挂载模块,用于按照所述文档层级关系信息将所述目标文档挂载至所述第二在线协同知识库中;
所述文档转换模块,还用于当所述打包文件中包含的原始文档中存在附件时,获取并保存对应的附件内容;
更新所述原始文档与所述附件内容的关联关系,得到经过处理后的原始文档;
将所述经过处理后的原始文档转换为目标格式的目标文档;
所述更新所述原始文档与所述附件内容的关联关系,包括:
将所述原始文档中的附件的链接方式替换成对应的下载地址的超链接方式。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6任一项所述的方法。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010223361.8A CN111414331B (zh) | 2020-03-26 | 2020-03-26 | 在线协同知识库的文档导入方法、装置、存储介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010223361.8A CN111414331B (zh) | 2020-03-26 | 2020-03-26 | 在线协同知识库的文档导入方法、装置、存储介质及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111414331A CN111414331A (zh) | 2020-07-14 |
CN111414331B true CN111414331B (zh) | 2023-08-08 |
Family
ID=71493274
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010223361.8A Active CN111414331B (zh) | 2020-03-26 | 2020-03-26 | 在线协同知识库的文档导入方法、装置、存储介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111414331B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116702704A (zh) * | 2023-08-02 | 2023-09-05 | 南庆(南通)信息科技有限公司 | 一种文档协作的信息标记系统及方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11353307A (ja) * | 1998-06-04 | 1999-12-24 | Nec Corp | 情報変換装置 |
US6654737B1 (en) * | 2000-05-23 | 2003-11-25 | Centor Software Corp. | Hypertext-based database architecture |
CN1484905A (zh) * | 2001-07-05 | 2004-03-24 | 皇家菲利浦电子有限公司 | 在转发电子内容过程中用url替代附件 |
CN101957865A (zh) * | 2010-10-27 | 2011-01-26 | 杭州新中大软件股份有限公司 | 一种异构系统间数据交换与共享技术 |
CN103390005A (zh) * | 2012-05-11 | 2013-11-13 | 北大方正集团有限公司 | 一种合并文档的方法与系统 |
CN103530327A (zh) * | 2013-09-25 | 2014-01-22 | 清华大学深圳研究生院 | 一种从非关系型数据库到关系型数据库的数据迁移方法 |
JP2015087912A (ja) * | 2013-10-30 | 2015-05-07 | キヤノン株式会社 | 文書管理システムのデータ移行 |
WO2017076263A1 (zh) * | 2015-11-03 | 2017-05-11 | 中兴通讯股份有限公司 | 融合知识库处理方法和装置及知识库管理系统、存储介质 |
CN110134800A (zh) * | 2019-04-17 | 2019-08-16 | 深圳壹账通智能科技有限公司 | 一种文档关系可视化处理方法及装置 |
CN110674082A (zh) * | 2019-09-24 | 2020-01-10 | 北京字节跳动网络技术有限公司 | 移除在线文档的方法、装置、电子设备及计算机可读介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9298675B2 (en) * | 2004-09-30 | 2016-03-29 | Adobe Systems Incorporated | Smart document import |
US20130332403A1 (en) * | 2012-06-12 | 2013-12-12 | International Business Machines Corporation | Leveraging analytics to propose context sensitive workflows for case management solutions |
-
2020
- 2020-03-26 CN CN202010223361.8A patent/CN111414331B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11353307A (ja) * | 1998-06-04 | 1999-12-24 | Nec Corp | 情報変換装置 |
US6654737B1 (en) * | 2000-05-23 | 2003-11-25 | Centor Software Corp. | Hypertext-based database architecture |
CN1484905A (zh) * | 2001-07-05 | 2004-03-24 | 皇家菲利浦电子有限公司 | 在转发电子内容过程中用url替代附件 |
CN101957865A (zh) * | 2010-10-27 | 2011-01-26 | 杭州新中大软件股份有限公司 | 一种异构系统间数据交换与共享技术 |
CN103390005A (zh) * | 2012-05-11 | 2013-11-13 | 北大方正集团有限公司 | 一种合并文档的方法与系统 |
CN103530327A (zh) * | 2013-09-25 | 2014-01-22 | 清华大学深圳研究生院 | 一种从非关系型数据库到关系型数据库的数据迁移方法 |
JP2015087912A (ja) * | 2013-10-30 | 2015-05-07 | キヤノン株式会社 | 文書管理システムのデータ移行 |
WO2017076263A1 (zh) * | 2015-11-03 | 2017-05-11 | 中兴通讯股份有限公司 | 融合知识库处理方法和装置及知识库管理系统、存储介质 |
CN110134800A (zh) * | 2019-04-17 | 2019-08-16 | 深圳壹账通智能科技有限公司 | 一种文档关系可视化处理方法及装置 |
CN110674082A (zh) * | 2019-09-24 | 2020-01-10 | 北京字节跳动网络技术有限公司 | 移除在线文档的方法、装置、电子设备及计算机可读介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111414331A (zh) | 2020-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109634598B (zh) | 一种页面显示方法、装置、设备及存储介质 | |
US8433687B1 (en) | Off-line indexing for client-based software development tools | |
CN109634490B (zh) | 一种列表显示方法、装置、设备及存储介质 | |
CN109062563B (zh) | 用于生成页面的方法和装置 | |
CN110780874B (zh) | 用于生成信息的方法和装置 | |
CN109445841B (zh) | 接口文档管理方法、装置、服务器及存储介质 | |
CN110866212A (zh) | 页面异常定位的方法、装置、电子设备及计算机可读介质 | |
CN110704102A (zh) | 页面跳转协议接口文档生成方法、系统、介质和电子设备 | |
CN111813465B (zh) | 一种信息获取方法、装置、介质和设备 | |
CN113419789A (zh) | 数据模型脚本的生成方法和装置 | |
CN112162751A (zh) | 一种接口文档自动生成方法及系统 | |
CN111414331B (zh) | 在线协同知识库的文档导入方法、装置、存储介质及设备 | |
CN113448562B (zh) | 一种逻辑代码自动生成方法、装置和电子设备 | |
CN112783482B (zh) | 一种可视化表单生成方法、装置、设备及存储介质 | |
CN116049142A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN111367500A (zh) | 数据的处理方法和装置 | |
CN111414161B (zh) | 一种生成idl文件的方法、装置、介质和电子设备 | |
US8312058B2 (en) | Method of providing element dossiers that include elements from nonadjacent lifecycle phases | |
CN112328841A (zh) | 一种文档处理方法、装置、电子设备及存储介质 | |
CN112394920A (zh) | 一种应用软件开发方法、平台和电子设备 | |
CN112035092A (zh) | 一种表单的处理方法、装置、设备和可读介质 | |
CN113778886B (zh) | 一种测试用例的处理方法和装置 | |
CN113986322B (zh) | 一种动态修改页面代码的方法、装置及存储介质 | |
CN112579553A (zh) | 用于记录信息的方法和装置 | |
CN114510914A (zh) | 一种铁路供电信息化Excel数据导入方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |