当前位置: 首页 > 网络应用技术

写一个镀铬插头-in以获取元素xpath

时间:2023-03-08 22:36:24 网络应用技术

  上次我每周举行一次会议时,每个人都聊了聊,并谈论了如何测试测试。

  然后对我们进行了测试。每次我编写测试案例时,我都必须通过Chrome获得元素XPath,这非常麻烦。

  我问,为什么我不收到想要获得XPath并自动阅读的浏览器插件?

  测试:我不会,我没有研究它。呵呵。

  通过梳理沟通和需求,要简要实现的逻辑:

  您为什么意识到Chrome插头?

  因为Chrome插头几乎支持所有WebKit内核浏览器,例如360,Sogou,Qq等,因此使用非常方便

  此外,对于Chrome插头开发人员,Chrome竭尽全力使插头的开发简单高效。

  好,打开。

  Chrome插头的项目结构非常简单。插件目录结构可以包含以下文件夹,使该目录看起来与网站目录非常相似

  因此,开发人员可以自由地将精力和时间放在真实的代码和逻辑上,而无需注意额外的事情

  但是,插头目录没有严格的标准。即使您只有一个,因为只有此文件,其他文件也是可选的。例如,我要开发的插头非常简单,因此项目结构非常简单。

  大概:

  请注意,清单。JSON是插件的输入文件,因此它是一个必要的文件。在此文件中配置了许多参数。

  其中一些必须是以下参数:

  推荐参数:

  其他参数,我在这里选择了其中一些

  清单参数的内容非常长,版本2和3有所不同,因此我不会在这里说。有关详细信息

  此页面用于显示XPATH的结果,所有XPATH结果将在此DIV中显示在此DIV中。

  让我们开始输入主题

  首先,我们要完成该元素的XPATH逻辑。该部分是插件的主要逻辑,放置在xpath.js中。

  那么XPath的元素是什么?我们打开浏览器的开发人员模式,选择一个元素,正确单击鼠标,并且对话框将弹出如下:

  在这里,我们可以找到一个普通的XPath:

  //*[@ID =“ juejin-web-editor”]/div [2]/div/div/header/div [2]/button

  或这样的完整路径XPath是这样的:

  /html/body/div/div [2]/div/div/header/div [1]

  因此,Xpath基本上正在遍历某个元素的父节点和兄弟节点,然后是节点级别的路径。该元素在兄弟节点中代表

  因此,让我们写一个在兄弟元素位置找到元素的功能。此功能返回元素在兄弟中的位置。请注意,n是相同的标签,例如:

  在上面的代码中

  因此,我们获得了获得n的方法:

  我们已经成功获得了N。元素和n的祖先要素:

  上面的查询是此形式的XPATH。在这里,我们实现了获得元素的XPath。接下来,我们要做的是将结果传递到当前页面。

  交叉页面通信在这里,我们使用Google扩展的API,称为扩展。此API用于发送和接收信息:

  获得完整的XPath后,使用该方法将其发送到

  发送后,我们需要在中国接受这些数据

  此时,我们的主要逻辑完成了,然后添加

  只需写必要的数据

  书面插头可以直接以文件夹的形式拖动

  安装后,将在扩展管理中列出

  如果要发布,您需要上升,需要在此处登录到Google帐户

  然后支付5美元的注册费

  成功注册为开发人员后,您可以在软件包之后上传.zip文件包。

  上传后,我可以在“开发人员信息中心”进行检查,并且不会详细介绍。

  作者:阳光同学