【问题标题】:Blue Prism - Application Modeller: Unique Attributes for Web ScrapingBlue Prism - Application Modeller:Web Scraping 的独特属性
【发布时间】:2021-10-02 09:04:14
【问题描述】:

我是 Blue Prism 和 Web 抓取的新手。我想在标题下抓取项目列表。标题不会改变,但列表中的项目会改变。

示例:

会员列表
嘉信理财
德美利证券

列表更改

会员列表
法戈银行
德美利证券

那么如何确保列表的 Application Modeller 中的属性始终能够抓取列表中变化的项目?

我注意到一些属性,例如
标签名称 = UI
路径=/HTML/BODY(1)/SGX-HEADER(1)/HTML/BODY(1)/DIV(1)/MAIN(1)/DIV(1)/ARTICLE(1)/TEMPLATE-BASE(1) /DIV(1)/DIV(1)/SECTION(1)/DIV(1)/SGX-WIDGETS-WRAPPER(1)/WIDGET-RICH-TEXT(5)/UL(1)

这些属性是什么意思?谢谢

【问题讨论】:

  • 您将枚举 ul 中的 li。如果路径中较早的任何内容发生更改,问题就会出现。
  • @QHarr:感谢您的回复。括号里的数字是什么意思?例如 WIDGET-RICH-TEXT(5)。我在网站的 HTML 中注意到,它们有类名和数据分析类别。有一个引用类名和数据分析类别的路径不是更好吗?
  • 这是第 5 个 WIDGET-RICH-TEXT 子标签。
  • @QHarr: 什么是子标签?必须将 1 个 WIDGET-RICH-TEXT 标签嵌入到另一个标签中才能成为孩子吗?
  • SGX-WIDGETS-WRAPPER(1)中的第5个

标签: html screen-scraping


【解决方案1】:

您可以创建动态属性并在从应用程序读取它之前验证它是否存在。一旦你的应用建模器设置好了,它就会看起来像

path=/HTML/BODY(1)/SGX-HEADER(1)/HTML/BODY(1)/DIV(1)/MAIN(1)/DIV(1)/ARTICLE(1)/TEMPLATE-BASE(1)/DIV(1)/DIV(1)/SECTION(1)/DIV(1)/SGX-WIDGETS-WRAPPER(1)/WIDGET-RICH-TEXT(5)/UL(1)

将此字段设置为动态。在运行时,您的流程如下所示:

这就是流程的样子,检查它是否存在,然后在集合中腾出空间并读取存在的元素路径中的值。等待阶段如下所示:

所以流程很简单,动态变量来跟踪元素是否存在,一旦它存在由等待阶段确认,然后读取该路径值处的内容并重复直到没有更多元素存在并将集合输出为结果。

【讨论】:

    猜你喜欢
    • 2019-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多