CN110276039A - 页面元素的路径生成方法、装置和电子设备 - Google Patents
页面元素的路径生成方法、装置和电子设备 Download PDFInfo
- Publication number
- CN110276039A CN110276039A CN201910569373.3A CN201910569373A CN110276039A CN 110276039 A CN110276039 A CN 110276039A CN 201910569373 A CN201910569373 A CN 201910569373A CN 110276039 A CN110276039 A CN 110276039A
- Authority
- CN
- China
- Prior art keywords
- path
- xpath
- target
- user
- initial
- 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.)
- Granted
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/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/83—Querying
- G06F16/835—Query processing
- G06F16/8373—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提出一种页面元素的路径生成方法、装置和电子设备。其中,该方法包括:在检测到用户对页面上的元素执行预设操作时,为用户展示该元素的初始xpath路径,并为用户展示由初始xpath路径确定的各个路径元素,以及获取用户从各个路径元素中选择的目标路径元素,并根据目标路径元素的属性信息和初始xpath路径,生成包含目标路径元素的属性信息的目标xpath路径。由此,使得用户无需查看对应页面的网页源代码,通过从展示的各个路径元素中选择出目标路径元素,即可快速得到满足业务需求的目标xpath路径,增加了xpath路径生成的灵活性。
Description
技术领域
本申请涉及信息处理技术领域,尤其涉及一种页面元素的路径生成方法页面元素的路径生成方法、装置和电子设备。
背景技术
目前,在需要使用网页中对应元素的xpath路径的场景中,例如,在需要根据对应网页中相应元素的xpath路径生成爬取脚本。相关技术中,通常通过相关程序直接生成对应元素的xpath路径,并直接提供给用户所生成的xpath路径。然而,通过上述方式所生成的xpath路径样式固定,不够灵活,在所生成的xpath路径样式不满业务需求时,需要专业人员结合对应网页的网页源代码进行人工分析,并根据分析结果对对应元素的xpath路径进行人工调整,通过这种方式调整元素的xpath路径,得到满足需要业务需求xpath路径,需要用户的操作较多,工作量较大,对用户的需求较高,得到满足业务需求的xpath路径的效率比较低,不方便用户快速得到与所需业务对应的xpath路径,用户体验度不理想。
发明内容
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本申请的第一个目的在于提出一种页面元素的路径生成方法,该方法在检测到用户对页面上的元素执行预设操作时,为用户展示该元素的初始xpath路径,可结合用户对初始xpath路径中各个路径元素的相关操作,实现了对xpath路径的编辑,使得用户可根据业务需求对xpath路径进行调整,增加了xpath路径生成的灵活性和自定义性。
本申请的第二个目的在于提出一种页面元素的路径生成装置。
本申请的第三个目的在于提出一种存储介质。
本申请的第四个目的在于提出一种电子设备。
本申请的第五个目的在于提出一种应用程序。
为实现上述目的,本申请第一方面实施例提出了一种页面元素的路径生成方法,包括:在检测到用户对页面上的元素执行预设操作时,获取所述元素的初始xpath路径;确定所述初始xpath路径中的各个路径元素;为所述用户展示所述初始xpath路径和所述各个路径元素;获取所述用户从所述各个路径元素中选择的目标路径元素;根据所述目标路径元素的属性信息和所述初始xpath路径,生成所述元素的目标xpath路径,并展示所述目标xpath路径。
在本申请一个实施例中,所述目标路径元素包括至少一个,每个所述目标路径元素对应多个属性信息;所述根据所述目标路径元素的属性信息和所述初始xpath路径,生成所述元素的目标xpath路径,包括:为所述用户展示每个所述目标路径元素对应多个属性信息;获取所述用户从所述多个属性信息中选择的目标属性信息;根据所述目标属性信息,对所述初始xpath路径进行调整,以生成包含所述目标属性信息的所述目标xpath路径。
在本申请一个实施例中,所述获取所述元素的初始xpath路径,包括:根据所述页面的可扩展标记语言XML文件,获取所述元素的父级元素,并获取所述父级元素的父级元素,直至获得的父级元素为html元素结束;将所获取的所有父级元素依次连接,生成所述元素的初始xpath路径。
在本申请一个实施例中,所述获取所述元素的初始xpath路径,包括:根据预设的元素和初始xpath路径之间的对应关系,获取所述元素对应的所述初始xpath路径。
在本申请一个实施例中,在所述为所述用户展示所述目标xpath路径之后,还包括:接收针对所述目标xpath路径的确认指令,根据所述目标xpath路径生成爬虫脚本。
为实现上述目的,本申请第二方面实施例提出了一种页面元素的路径生成装置,包括:第一获取模块,用于在检测到用户对页面上的元素执行预设操作时,获取所述元素的初始xpath路径;确定模块,用于确定所述初始xpath路径中的各个路径元素;第一展示模块,用于为所述用户展示所述初始xpath路径和所述各个路径元素;第二获取模块,用于获取所述用户从所述各个路径元素中选择的目标路径元素;第一生成模块,用于根据所述目标路径元素的属性信息和所述初始xpath路径,生成所述元素的目标xpath路径;第二展示模块,用于展示所述目标xpath路径。
在本申请一个实施例中,所述目标路径元素包括至少一个,每个所述目标路径元素对应多个属性信息;
所述第一生成模块,具体用于:为所述用户展示每个所述目标路径元素对应多个属性信息;获取所述用户从所述多个属性信息中选择的目标属性信息;根据所述目标属性信息,对所述初始xpath路径进行调整,以生成包含所述目标属性信息的所述目标xpath路径。
在本申请一个实施例中,所述第一获取模块,具体用于:根据所述页面的可扩展标记语言XML文件,获取所述元素的父级元素,并获取所述父级元素的父级元素,直至获得的父级元素为html元素结束;将所获取的所有父级元素依次连接,生成所述元素的初始xpath路径。
在本申请一个实施例中,所述第一获取模块,具体用于:根据预设的元素和初始xpath路径之间的对应关系,获取所述元素对应的所述初始xpath路径。
在本申请一个实施例中,还包括:第二生成模块,用于接收针对所述目标xpath路径的确认指令,根据所述目标xpath路径生成爬虫脚本。
为实现上述目的,本申请第三方面实施例提出了一种存储介质,其中,所述存储介质用于存储应用程序,所述应用程序用于在运行时执行本申请所述的一种页面元素的路径生成方法。
为实现上述目的,本申请第四方面实施例提出了一种电子设备,包括:处理器、存储器、通信接口和总线;所述处理器、所述存储器和所述通信接口通过所述总线连接并完成相互间的通信;所述存储器存储可执行程序代码;所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于:在检测到用户对页面上的元素执行预设操作时,获取所述元素的初始xpath路径;确定所述初始xpath路径中的各个路径元素;为所述用户展示所述初始xpath路径和所述各个路径元素;获取所述用户从所述各个路径元素中选择的目标路径元素;根据所述目标路径元素的属性信息和所述初始xpath路径,生成所述元素的目标xpath路径,并展示所述目标xpath路径。
为实现上述目的,本申请第五方面实施例提出了一种应用程序,其中,所述应用程序用于在运行时执行本申请所述的一种页面元素的路径生成方法。
在本申请中,在检测到用户对页面上的元素执行预设操作时,为用户展示该元素的初始xpath路径,并为用户展示由初始xpath路径确定的各个路径元素,以及获取用户从各个路径元素中选择的目标路径元素,并根据目标路径元素的属性信息和初始xpath路径,生成包含目标路径元素的属性信息的目标xpath路径。由此,使得用户无需查看对应页面的网页源代码,通过从展示的各个路径元素中选择出目标路径元素,即可快速得到满足业务需求的目标xpath路径,增加了xpath路径生成的灵活性。
附图说明
图1是根据本申请一个实施例的页面元素的路径生成方法的流程图。
图2是根据本申请一个具体实施例的页面元素的路径生成方法的流程图。
图3是路径结果界面对应的效果示例图一;
图4是路径结果界面对应的效果示例图二;
图5是路径结果界面的效果示例三;
图6是根据本申请一个实施例的页面元素的路径生成装置的结构示意图;
图7是根据本申请另一个实施例的页面元素的路径生成装置的结构示意图;
图8是根据本申请一个实施例的电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的页面元素的路径生成方法、装置和电子设备。
图1是根据本申请一个实施例的页面元素的路径生成方法的流程图。
如图1所示,该页面元素的路径生成方法包括:
步骤101,在检测到用户对页面上的元素执行预设操作时,获取元素的初始xpath路径。
其中,需要说明的是,本实施例的页面元素的路径生成方法的执行主体为页面元素的路径生成装置,该页面元素的路径生成装置可以为终端设备、服务器等硬件设备,或者为硬件设备上安装的软件。
本实施例,以页面元素的路径生成装置为硬件设备上安装的软件为例进行描述。
作为一种示例性的实施方式,在用户打开网页时,硬件设备中具有生成Xpath路径的软件启动,并对用户在对应网页的用户操作进行检测,以及在检测用户对对应网页中的元素执行预设操作时,获取元素的初始xpath路径。
其中,预设操作是指预先设置的触发操作,例如,预设操作可以为点击、双击等操作,而不限于此。
其中,在不同应用场景中,获取元素的初始xpath路径的方式有多种方式,举例说明如下:
作为一种示例,根据该页面的可扩展标记语言XML(Extensible MarkupLanguage)文件,获取元素的父级元素,并获取父级元素的父级元素,直至获得的父级元素为html元素结束,然后,将所获取的所有父级元素依次连接,生成元素的初始xpath路径。
举例而言,假设预设操作为点击操作,在检测到用户点击对应网页上的h1元素后,根据该页面的XML文件,该元素h1的所有祖先元素为html、body、div、div,其中,html元素为该页面的根元素。此时,根据所获取到的祖先元素和元素h1,生成该元素h1的初始xpath路径,其中,元素h1的初始xpath路径为:/html/body/div[4]/div[2]/h1。
作为另一种示例,还可根据预设的元素和初始xpath路径之间的对应关系,获取元素对应的初始xpath路径。
当然,在具体实施过程中也可以采用其他方式得到该元素的初始xpath路径,本申请实施例中不对具体确定方式进行限定,只要能确定出该元素的初始xpath路径的方式均可适用本申请中。
步骤102,确定初始xpath路径中的各个路径元素。
在本实施例中,为了使得用户结合路径元素对初始xpath路径进行调整,作为一种可能的实现方式,对在获取对应元素的初始xpath路径后,可对初始xpath路径进行路径元素分析,以通过分析初始xpath路径,确定出该初始xpath路径中的各个路径元素。
例如,元素h1的初始xpath路径为:/html/body/div[4]/div[2]/h1,通过分析该初始xpath路径,可以确定出该初始xpath路径中的路径元素包括:html、body、div、div和h1。
作为另一种可能的实现方式,在通过页面的XML文件,得到该元素的初始xpath路径的过程中,会获取到从该元素到根元素html所经过的所有元素,从该元素到根元素html所经过的所有元素,即为xpath路径中的各个路径元素。
步骤103,为用户展示初始xpath路径和各个路径元素。
步骤104,获取用户从各个路径元素中选择的目标路径元素。
其中,目标路径元素可以为各个路径元素中的一个或者多个。
例如,元素h1的路径元素包括:html、body、div、div和h1,在向用户展示各个路径元素后,用户可根据业务需求,从html、body、div、div和h1中选择h1作为目标路径元素,或者,选择div作为目标路径元素。
步骤105,根据目标路径元素的属性信息和初始xpath路径,生成元素的目标xpath路径,并展示目标xpath路径。
在本实施例中,根据目标路径元素的属性信息和初始xpath路径,生成元素的目标xpath路径的实现方式可以多种,示例说明如下:
作为一种可能的实现方式,可从该页面对应的XML文件中,获取该目标路径元素的属性信息,并根据该目标路径元素的属性信息,对初始xpath路径进行调整,以生成包含目标路径元素的属性信息的目标xpath路径。
其中,属性信息包括属性类型及属性类型对应的属性值。
其中,属性类型可以包括但不限于文本属性、标识(ID)属性和类(class)属性等。
接上述举例,假设用户从html、body、div、div和h1中选择h1作为目标路径元素,此时,可从该页面对应的XML文件中,获取该目标元素路径h1的属性信息,假设目标元素路径h1的属性信息为文本属性,且文本属性的属性值为“某某在全国公安工作会议上的讲话”,此时,根据目标元素的属性信息,对初始xpath路径进行调整后,所得到的目标xpath路径的形式为:/html/body/div[4]/div[2]/h1/text()。
作为另一种可能的实现方式,在目标路径元素为至少一个,且每个路径元素对应多个属性信息时,可为用户展示每个目标路径元素对应的多个属性信息,并获取用户从多个属性信息中选择的目标属性信息,然后,根据目标属性信息,对初始xpath路径进行调整,以生成包含目标属性信息的目标xpath路径。本申请实施例的页面元素的路径生成方法,在检测到用户对页面上的元素执行预设操作时,为用户展示该元素的初始xpath路径,并为用户展示由初始xpath路径确定的各个路径元素,以及获取用户从各个路径元素中选择的目标路径元素,并根据目标路径元素的属性信息和初始xpath路径,生成包含目标路径元素的属性信息的目标xpath路径。由此,使得用户无需查看对应页面的网页源代码,通过从展示的各个路径元素中选择出目标路径元素,即可快速得到满足业务需求的目标xpath路径,增加了xpath路径生成的灵活性。
基于上述实施例的基础上,为了方便用户快速得到与业务需求对应的爬虫脚本,在本实施例中,在为用户展示目标xpath路径后,还可以接收到用户针对目标xpath路径的确认指令,根据目标xpath路径生成对应的爬虫脚本,以方便后续根据该爬虫脚本从该网页中爬取所需要的对应信息。
在本实施例中,为了方便用户查看xpath路径以及对路径元素进行操作,优选地,可在同一个用户界面中为用户展示初始xpath路径、各个路径元素及其对应的属性信息,以及目标xpath路径,以方便用户对相应路径元素进行操作,以及查看执行操作后,所得到的目标xpath路径。
需要理解的是,在实际应用中,可以在用户界面中直接展示各个路径元素的属性信息,还可以在用户界面中默认展示一个路径元素的属性信息,并根据用户在用户界面中对对应路径元素的选中操作,在用户界面中展示用户所选中路径元素的属性信息。当然,还可以采用其他方式,而不限于此。
下面结合图2对本申请实施例的页面元素的路径生成方法进行描述。
图2是根据本申请一个具体实施例的页面元素的路径生成方法的流程图。
如图2所示,该页面元素的路径生成方法包括:
步骤201,在检测到用户对页面上的元素执行预设操作时,根据页面的可扩展标记语言XML文件,获取元素的父级元素,并获取父级元素的父级元素,直至获得的父级元素为html元素结束。
作为一种示例性的实施方式,在用户打开网页时,硬件设备中具有生成Xpath路径的软件启动,并对用户在对应网页的用户操作进行监听,以及在监听到用户对对应网页中的元素执行预设操作时,根据页面的可扩展标记语言XML文件,获取元素的父级元素,并获取父级元素的父级元素,直至获得的父级元素为html元素结束。
其中,预设操作是指预先设置的触发操作,例如,预设操作可以为点击、双击等操作,而不限于此。
步骤202,将所获取的所有父级元素依次连接,生成元素的初始xpath路径。
步骤203,在路径结果界面上展示该元素的初始xpath路径,并展示该元素和及其各个父级元素。
举例而言,假设预设操作为点击操作,在检测到用户点击对应网页上的的h1元素后,根据该页面的XML文件,该元素h1的所有祖先元素为html、body、div、div,其中,html元素为该页面的根元素。此时,可将元素html、body、div、div和元素h1依次连接,生成该元素h1的初始xpath路径,其中,元素h1的初始xpath路径为:/html/body/div[4]/div[2]/h1,并在路径结果界面上展示元素h1的初始xpath路径,并显示元素html、body、div、div。
步骤204,在监听到用户选中该元素时,在路径结果界面上展示该元素的属性信息。
在本申请的一个实施例中,为了方便用户快速调整初始xpath路径,作为一种示例性的实施方式,在路径结果界面上展示该元素的初始xpath路径,并展示该元素和及其各个父级元素,还可以在路径结果界面上默认展示该元素的属性信息,以方便用户快速选中该元素的属性信息进行初始xpath路径的调整。
步骤205,接收用户对该元素的属性信息的选中操作,并根据选中操作所对应的属性信息,对该元素的初始xpath路径进行调整,并显示目标xpath路径。
接上个举例,假设在路径结果界面中默认显示元素h1的属性信息,在用户选中元素h1的文本属性时,路径结果界面中展示的目标xpath路径为/html/body/div[4]/div[2]/h1/text(),其中,路径结果界面对应的效果示例图,如图3所示,其中,标注A表示用户选中元素h1,标注B表示h1的文本属性被选中。
步骤206,在监听到用户选中任意一个父级元素时,在路径结果界面中展示该父级元素对应的属性信息。
举例而言,在用户选中元素h1的文本属性,得到对应目标xpath路径后,如果检测到用户点击元素h1的前一个元素div,即,如果监听到用户点击元素h1的父级元素div,此时,路径界面中显示该元素div对应的多个属性信息,其中,路径结果界面的效果示例图,如图4所示,通过图4可以看出,元素div的属性信息包括class属性、id属性。
步骤207,接收用户从路径结果界面中从该父级元素中选中的目标属性信息,并根据用户选中的目标属性信息,对目标xpath路径进行调整,并在路径结果界面中展示调整后的目标xpath路径。
举例而言,在路径结果界面如图4所示后,如果用户点击元素div的id属性,此时,可根据用户点击的元素div的id属性,对目标xpath路径进行调整,调整后的目标xpath路径为/html/body/div[4]/div[@id=“epContentLeft”]/h1/text()。其中,在用户点击元素div的id属性后,路径结果界面对应的效果示例图,如图5所示。
步骤208,在通过路径界面接收到针对目标xpath路径的保存指令时,保存该元素的对应目标xpath路径。
其中,保存指令可以通过多种方式输入,例如,可通过点击路径结果界面中的相应保存按钮输入保存指令,或者,在路径结果界面中提供接收语音指令的接口,用户通过以语音方式输入保存指令。
综上可以看出,本申请实施例在检测到用户对页面上的元素执行预设操作时,为用户展示该元素的初始xpath路径,可结合用户对初始xpath路径中各个路径元素的相关操作,实现了对xpath路径的编辑,使得用户可根据业务需求对xpath路径进行调整,增加了xpath路径生成的灵活性和自定义性。
本申请实施例的页面元素的路径生成方法,在检测到用户对页面上的元素执行预设操作时,为用户展示该元素的初始xpath路径,并为用户展示由初始xpath路径确定的各个路径元素,以及获取用户从各个路径元素中选择的目标路径元素,并根据目标路径元素的属性信息和初始xpath路径,生成包含目标路径元素的属性信息的目标xpath路径。由此,使得用户无需查看对应页面的网页源代码,通过从展示的各个路径元素中选择出目标路径元素,即可快速得到满足业务需求的目标xpath路径,增加了xpath路径生成的灵活性。
为了实现上述实施例,本申请还提出一种页面元素的路径生成装置。
图6是根据本申请一个实施例的页面元素的路径生成装置的结构示意图。
如图6所示,该页面元素的路径生成装置包括第一获取模块110、确定模块120、第一展示模块130、第二获取模块140、第一生成模块150和第二展示模块160,其中:
第一获取模块110,用于在检测到用户对页面上的元素执行预设操作时,获取元素的初始xpath路径。
确定模块120,用于确定初始xpath路径中的各个路径元素。
第一展示模块130,用于为用户展示初始xpath路径和各个路径元素。
第二获取模块140,用于获取用户从各个路径元素中选择的目标路径元素。
第一生成模块150,用于根据目标路径元素的属性信息和初始xpath路径,生成元素的目标xpath路径。
第二展示模块160,用于展示目标xpath路径。
在本申请的一个实施例中,第一获取模块110,具体用于:根据页面的可扩展标记语言XML文件,获取元素的父级元素,并获取父级元素的父级元素,直至获得的父级元素为html元素结束;将所获取的所有父级元素依次连接,生成元素的初始xpath路径。
在本申请的另一个实施中,第一获取模块110,具体用于:根据预设的元素和初始xpath路径之间的对应关系,获取元素对应的初始xpath路径。
在本申请的一个实施例中,所述目标路径元素包括至少一个,每个所述目标路径元素对应多个属性信息;所述第一生成模块150,具体用于:为所述用户展示每个所述目标路径元素对应多个属性信息;获取所述用户从所述多个属性信息中选择的目标属性信息;根据所述目标属性信息,对所述初始xpath路径进行调整,以生成包含所述目标属性信息的所述目标xpath路径。
在本申请的一个实施例中,在图6所示的装置实施例的基础上,如图7所示,该装置还可以包括:
第二生成模块170,用于接收针对目标xpath路径的确认指令,根据目标xpath路径生成爬虫脚本。
其中,需要说明的是,前述对页面元素的路径生成方法实施例的解释说明也适用于该实施例的页面元素的路径生成装置,此处不再赘述。
本申请实施例的页面元素的路径生成装置,在检测到用户对页面上的元素执行预设操作时,为用户展示该元素的初始xpath路径,并为用户展示由初始xpath路径确定的各个路径元素,以及获取用户从各个路径元素中选择的目标路径元素,并根据目标路径元素的属性信息和初始xpath路径,生成包含目标路径元素的属性信息的目标xpath路径。由此,使得用户无需查看对应页面的网页源代码,通过从展示的各个路径元素中选择出目标路径元素,即可快速得到满足业务需求的目标xpath路径,增加了xpath路径生成的灵活性。
为了实现上述实施例,本申请还提出一种电子设备。
图8是根据本申请一个实施例的电子设备的结构示意图。
如图8所示,该电子设备包括处理器51、存储器52、通信接口53和总线54,其中:
处理器51、存储器52和通信接口53通过总线54连接并完成相互间的通信;存储器52存储可执行程序代码;处理器51通过读取存储器52中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于:在检测到用户对页面上的元素执行预设操作时,获取元素的初始xpath路径;确定初始xpath路径中的各个路径元素;为用户展示初始xpath路径和各个路径元素;获取用户从各个路径元素中选择的目标路径元素;根据目标路径元素的属性信息和初始xpath路径,生成元素的目标xpath路径,并展示目标xpath路径。
本申请实施例的电子设备,在检测到用户对页面上的元素执行预设操作时,为用户展示该元素的初始xpath路径,并为用户展示由初始xpath路径确定的各个路径元素,以及获取用户从各个路径元素中选择的目标路径元素,并根据目标路径元素的属性信息和初始xpath路径,生成包含目标路径元素的属性信息的目标xpath路径。由此,使得用户无需查看对应页面的网页源代码,通过从展示的各个路径元素中选择出目标路径元素,即可快速得到满足业务需求的目标xpath路径,增加了xpath路径生成的灵活性。
为了实现上述实施例,本申请还提出一种存储介质,其中,存储介质用于存储应用程序,应用程序用于在运行时执行本申请的一种页面元素的路径生成方法。
为了实现上述实施例,本申请还提出一种应用程序,其中,应用程序用于在运行时执行本申请的一种页面元素的路径生成方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种页面元素的路径生成方法,其特征在于,包括:
在检测到用户对页面上的元素执行预设操作时,获取所述元素的初始xpath路径;
确定所述初始xpath路径中的各个路径元素;
为所述用户展示所述初始xpath路径和所述各个路径元素;
获取所述用户从所述各个路径元素中选择的目标路径元素;
根据所述目标路径元素的属性信息和所述初始xpath路径,生成所述元素的目标xpath路径,并展示所述目标xpath路径。
2.如权利要求1所述的方法,其特征在于,所述目标路径元素包括至少一个,每个所述目标路径元素对应多个属性信息;
所述根据所述目标路径元素的属性信息和所述初始xpath路径,生成所述元素的目标xpath路径,包括:为所述用户展示每个所述目标路径元素对应多个属性信息;
获取所述用户从所述多个属性信息中选择的目标属性信息;
根据所述目标属性信息,对所述初始xpath路径进行调整,以生成包含所述目标属性信息的所述目标xpath路径。
3.如权利要求1所述的方法,其特征在于,所述获取所述元素的初始xpath路径,包括:
根据所述页面的可扩展标记语言XML文件,获取所述元素的父级元素,并获取所述父级元素的父级元素,直至获得的父级元素为html元素结束;
将所获取的所有父级元素依次连接,生成所述元素的初始xpath路径。
4.如权利要求1所述的方法,其特征在于,所述获取所述元素的初始xpath路径,包括:
根据预设的元素和初始xpath路径之间的对应关系,获取所述元素对应的所述初始xpath路径。
5.如权利要求1所述的方法,其特征在于,在所述为所述用户展示所述目标xpath路径之后,还包括:
接收针对所述目标xpath路径的确认指令,根据所述目标xpath路径生成爬虫脚本。
6.一种页面元素的路径生成装置,其特征在于,包括:
第一获取模块,用于在检测到用户对页面上的元素执行预设操作时,获取所述元素的初始xpath路径;
确定模块,用于确定所述初始xpath路径中的各个路径元素;
第一展示模块,用于为所述用户展示所述初始xpath路径和所述各个路径元素;
第二获取模块,用于获取所述用户从所述各个路径元素中选择的目标路径元素;
第一生成模块,用于根据所述目标路径元素的属性信息和所述初始xpath路径,生成所述元素的目标xpath路径;
第二展示模块,用于展示所述目标xpath路径。
7.如权利要求6所述的装置,其特征在于,所述目标路径元素包括至少一个,每个所述目标路径元素对应多个属性信息;
所述第一生成模块,具体用于:为所述用户展示每个所述目标路径元素对应多个属性信息;
获取所述用户从所述多个属性信息中选择的目标属性信息;
根据所述目标属性信息,对所述初始xpath路径进行调整,以生成包含所述目标属性信息的所述目标xpath路径。
8.如权利要求6所述的装置,其特征在于,所述第一获取模块,具体用于:
根据所述页面的可扩展标记语言XML文件,获取所述元素的父级元素,并获取所述父级元素的父级元素,直至获得的父级元素为html元素结束;
将所获取的所有父级元素依次连接,生成所述元素的初始xpath路径。
9.如权利要求6所述的装置,其特征在于,所述第一获取模块,具体用于:
根据预设的元素和初始xpath路径之间的对应关系,获取所述元素对应的所述初始xpath路径。
10.如权利要求6所述的装置,其特征在于,还包括:
第二生成模块,用于接收针对所述目标xpath路径的确认指令,根据所述目标xpath路径生成爬虫脚本。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910569373.3A CN110276039B (zh) | 2019-06-27 | 2019-06-27 | 页面元素的路径生成方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910569373.3A CN110276039B (zh) | 2019-06-27 | 2019-06-27 | 页面元素的路径生成方法、装置和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110276039A true CN110276039A (zh) | 2019-09-24 |
CN110276039B CN110276039B (zh) | 2021-09-28 |
Family
ID=67963704
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910569373.3A Active CN110276039B (zh) | 2019-06-27 | 2019-06-27 | 页面元素的路径生成方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110276039B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111309326A (zh) * | 2020-02-12 | 2020-06-19 | 深圳壹账通智能科技有限公司 | 路径脚本的生成方法、装置、设备及计算机可读存储介质 |
CN112182468A (zh) * | 2020-10-14 | 2021-01-05 | 北京新纽科技有限公司 | 一种兼容客户端界面元素与网页页面元素的定位和解析方法 |
CN112417252A (zh) * | 2020-12-04 | 2021-02-26 | 天津开心生活科技有限公司 | 爬虫路径确定方法、装置、存储介质与电子设备 |
CN112579951A (zh) * | 2019-09-30 | 2021-03-30 | 北京国双科技有限公司 | 页面元素选取方法、装置、存储介质及设备 |
CN113515715A (zh) * | 2020-10-15 | 2021-10-19 | 腾讯科技(深圳)有限公司 | 埋点事件编码的生成方法、处理方法及相关设备 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002097667A2 (en) * | 2001-05-31 | 2002-12-05 | Lixto Software Gmbh | Visual and interactive wrapper generation, automated information extraction from web pages, and translation into xml |
CN1519751A (zh) * | 2003-01-30 | 2004-08-11 | �Ҵ���˾ | 生成结构模式候选对象的方法、系统和程序 |
US20040205577A1 (en) * | 2002-04-23 | 2004-10-14 | International Business Machines Corporation | Selectable methods for generating robust Xpath expressions |
US20050257201A1 (en) * | 2004-05-17 | 2005-11-17 | International Business Machines Corporation | Optimization of XPath expressions for evaluation upon streaming XML data |
TW200828060A (en) * | 2006-12-29 | 2008-07-01 | Hon Hai Prec Ind Co Ltd | System and method for visual generating XQuery document |
US20090204616A1 (en) * | 2004-06-29 | 2009-08-13 | International Business Machines Corporation | Access controller using tree-structured data |
US7720868B2 (en) * | 2006-11-13 | 2010-05-18 | Microsoft Corporation | Providing assistance with the creation of an XPath expression |
CN101763425A (zh) * | 2010-01-12 | 2010-06-30 | 苏州阔地网络科技有限公司 | 一种通用的可用于任何网页的网页内容抓取的方法 |
CN103605675A (zh) * | 2013-10-30 | 2014-02-26 | 北京京东尚科信息技术有限公司 | 一种xml路径表达式提取方法及装置 |
CN104142985A (zh) * | 2014-07-23 | 2014-11-12 | 哈尔滨工业大学(威海) | 一种半自动化的垂直爬虫生成工具及方法 |
CN104965901A (zh) * | 2015-06-30 | 2015-10-07 | 北京奇虎科技有限公司 | 一种目标页面内容抓取方法和装置 |
CN107609150A (zh) * | 2017-08-28 | 2018-01-19 | 湖北省楚天云有限公司 | 一种基于页面元素选取的交互式网络爬虫创建方法及系统 |
-
2019
- 2019-06-27 CN CN201910569373.3A patent/CN110276039B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002097667A2 (en) * | 2001-05-31 | 2002-12-05 | Lixto Software Gmbh | Visual and interactive wrapper generation, automated information extraction from web pages, and translation into xml |
US20040205577A1 (en) * | 2002-04-23 | 2004-10-14 | International Business Machines Corporation | Selectable methods for generating robust Xpath expressions |
CN1519751A (zh) * | 2003-01-30 | 2004-08-11 | �Ҵ���˾ | 生成结构模式候选对象的方法、系统和程序 |
US20050257201A1 (en) * | 2004-05-17 | 2005-11-17 | International Business Machines Corporation | Optimization of XPath expressions for evaluation upon streaming XML data |
US20090204616A1 (en) * | 2004-06-29 | 2009-08-13 | International Business Machines Corporation | Access controller using tree-structured data |
US7720868B2 (en) * | 2006-11-13 | 2010-05-18 | Microsoft Corporation | Providing assistance with the creation of an XPath expression |
TW200828060A (en) * | 2006-12-29 | 2008-07-01 | Hon Hai Prec Ind Co Ltd | System and method for visual generating XQuery document |
CN101763425A (zh) * | 2010-01-12 | 2010-06-30 | 苏州阔地网络科技有限公司 | 一种通用的可用于任何网页的网页内容抓取的方法 |
CN103605675A (zh) * | 2013-10-30 | 2014-02-26 | 北京京东尚科信息技术有限公司 | 一种xml路径表达式提取方法及装置 |
CN104142985A (zh) * | 2014-07-23 | 2014-11-12 | 哈尔滨工业大学(威海) | 一种半自动化的垂直爬虫生成工具及方法 |
CN104965901A (zh) * | 2015-06-30 | 2015-10-07 | 北京奇虎科技有限公司 | 一种目标页面内容抓取方法和装置 |
CN107609150A (zh) * | 2017-08-28 | 2018-01-19 | 湖北省楚天云有限公司 | 一种基于页面元素选取的交互式网络爬虫创建方法及系统 |
Non-Patent Citations (3)
Title |
---|
ADMIN: "XPath for Crawling with Scrapy", 《HTTP://PYTHONSCRAPING.COM/BLOG/XPATH-AND-SCRAPY》 * |
卢振: "面向教育新闻的主题爬虫设计与实现", 《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》 * |
机器学习AI算法工程: "用scrapy爬虫抓取慕课网课程数据详细步骤", 《HTTPS://CLOUD.TENCENT.COM/DEVELOPER/ARTICLE/1061430》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112579951A (zh) * | 2019-09-30 | 2021-03-30 | 北京国双科技有限公司 | 页面元素选取方法、装置、存储介质及设备 |
CN111309326A (zh) * | 2020-02-12 | 2020-06-19 | 深圳壹账通智能科技有限公司 | 路径脚本的生成方法、装置、设备及计算机可读存储介质 |
CN112182468A (zh) * | 2020-10-14 | 2021-01-05 | 北京新纽科技有限公司 | 一种兼容客户端界面元素与网页页面元素的定位和解析方法 |
CN113515715A (zh) * | 2020-10-15 | 2021-10-19 | 腾讯科技(深圳)有限公司 | 埋点事件编码的生成方法、处理方法及相关设备 |
CN113515715B (zh) * | 2020-10-15 | 2024-03-15 | 腾讯科技(深圳)有限公司 | 埋点事件编码的生成方法、处理方法及相关设备 |
CN112417252A (zh) * | 2020-12-04 | 2021-02-26 | 天津开心生活科技有限公司 | 爬虫路径确定方法、装置、存储介质与电子设备 |
CN112417252B (zh) * | 2020-12-04 | 2023-05-09 | 天津开心生活科技有限公司 | 爬虫路径确定方法、装置、存储介质与电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110276039B (zh) | 2021-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110276039A (zh) | 页面元素的路径生成方法、装置和电子设备 | |
US11281845B2 (en) | Deployable tag management in computer data networks | |
CN104050078B (zh) | 测试脚本生成系统 | |
CN106354519A (zh) | 一种用户画像的标签生成方法和装置 | |
CN109165162A (zh) | 一种车载系统的测试方法及相关设备 | |
CN112558824B (zh) | 一种页面显示方法、装置、以及计算机存储介质 | |
CN107992427A (zh) | 创建业务测试场景的方法、装置、设备及其存储介质 | |
US8219922B2 (en) | Dynamic point and extend user interface | |
CN111176646B (zh) | 应急预案web页面的生成方法及装置 | |
US10908928B2 (en) | Rules-based workflow messaging | |
CN109933760A (zh) | 表单生成方法、装置、计算机设备及计算机可读存储介质 | |
CN108363792A (zh) | 应用页面的链接生成方法、装置、存储介质及电子设备 | |
WO2008094785A1 (en) | Use of color in a site analysis report | |
CN105528135A (zh) | 信息的展现方法、装置和电子装置 | |
US7730392B2 (en) | Electronic web sticky | |
US20080250320A1 (en) | User-defined media annotations on dynamic charts | |
US8812957B2 (en) | Relevance slider in a site analysis report | |
CN105260424B (zh) | 用户浏览网页历史记录和最常访问的处理方法及装置 | |
CN110096507A (zh) | 一种页面复杂表格渲染方法、系统、终端及介质 | |
CN107544903A (zh) | 页面规范检测方法、装置及计算机设备 | |
CN107220066A (zh) | 应用商店中应用软件的发布方法及装置 | |
CN108959495A (zh) | H5网页的页面显示方法、装置、设备和计算机存储介质 | |
CN105117205A (zh) | 一种网页编辑方法和装置 | |
CN107360265A (zh) | 一种设备唯一标识码获取方法、装置及移动终端 | |
US20130339835A1 (en) | Dynamic presentation of a results set by a form-based software application |
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 |