【问题标题】:Trying with Selenium + Excel VBA to scrape code from a site in Chrome Browser尝试使用 Selenium + Excel VBA 从 Chrome 浏览器中的站点抓取代码
【发布时间】:2019-11-29 19:49:58
【问题描述】:

我需要一些关于在 Excel (2013) VBE 中使用 Selenium Basic ChromeDriver (v 75.0.3770.140) 从 Chrome (v 75.0.3770.142) 中的网站抓取文本的指导。

这是 HTML:

<div ng-if="!ShippingDetails.isShippingCreatedOutsideSH" ng-bind="ShippingDetails.code" class="">3333333</div>

我需要提取的部分是“3333333”

我仍然是 Selenium 类型库的新手,到目前为止,我已经笨拙地尝试过这个新手尝试:

Dim SHN As String
SHN = obj.FindElementByXPath("//div[@ng-if='!ShippingDetails.isShippingCreatedOutsideSH']/ng-bind[@'ShippingDetails.code']").Text
MsgBox SHN

【问题讨论】:

    标签: excel vba selenium xpath css-selectors


    【解决方案1】:

    试试这个

    Debug.Print .FindElementByXPath("//div[@ng-bind='ShippingDetails.code']").Text
    

    【讨论】:

      【解决方案2】:

      要打印文本3333333,您可以使用以下任一Locator Strategies

      • 使用CSS_SELECTOR

        • 使用.Text

          Debug.Print .FindElementByCss("div[ng-if$='isShippingCreatedOutsideSH'][ng-bind^='ShippingDetails']").Text
          
        • 使用.Attribute("innerHTML")

          Debug.Print .FindElementByCss("div[ng-if$='isShippingCreatedOutsideSH'][ng-bind^='ShippingDetails']").Attribute("innerHTML") 
          
      • 使用XPATH

        • 使用.Text

          Debug.Print .FindElementByXPath("//div[contains(@ng-if, 'isShippingCreatedOutsideSH') and starts-with(@ng-bind, 'ShippingDetails')]").Text
          
        • 使用.Attribute("innerHTML")

          Debug.Print .FindElementByXPath("//div[contains(@ng-if, 'isShippingCreatedOutsideSH') and starts-with(@ng-bind, 'ShippingDetails')]").Attribute("innerHTML") 
          

      您可以在Vba selenium code to get data from Li class找到相关讨论

      【讨论】:

        猜你喜欢
        • 2021-03-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-26
        • 2014-05-23
        • 2018-05-18
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多