我Watir用于從已發布專案中獲取資料,單個頁面上 12 個。結構如下所示,我預計會顯示 12 個專案,就像Nokogiri決議結果的方式一樣。我正在使用 :css 獲取它的方式,或者直接browser.div,但結果不是我所期望的。
這與Nokogiri抓取元素的方式有何不同?我假設Watir以相同的方式完成此操作。然后我需要遍歷這些專案以獲取它們的資料。我正在搜索itemContainer類,它包含頁面上的所有 12 種產品。
我怎樣才能得到那個div陣列?
## HTML
<div data-jplist-item="" class="itemSpace">
<div class="itemContainer">
<a href="/en/Products/All/Tipless Chine" target="_blank" title="Click here to learn more about this product">
<div class="name itemName">Alpha<span style="display:none;">boat part, DELTAUPDATE</span></div>
<div hljs-string">" style="display:none;">25.575</div>
<div hljs-string">" style="display:none;">1711</div>
<div hljs-string">">SALE</div></a>
</div>
</div>
<div data-jplist-item="" hljs-string">">
<div hljs-string">">
<a href="/en/Products/All/Something" target="_blank" title="Click here to learn more about this product">
<div hljs-string">">Bravo<span style="display:none;">boat part</span></div>
<div hljs-string">" style="display:none;">300</div>
<div hljs-string">" style="display:none;">584</div>
<div hljs-string">">SALE</div></a>
</div>
</div>
<div data-jplist-item="" hljs-string">">
<div hljs-string">">
<a href="/en/Products/All/Something Else" target="_blank" title="Click here to learn more about this product">
<div hljs-string">">Charlie<span style="display:none;">boat part</span></div>
<div hljs-string">" style="display:none;">600</div>
<div hljs-string">" style="display:none;">413</div>
<div hljs-string">">SALE</div></a>
</div>
</div>
## code
##### a is the browser
item = a.div(class: "itemContainer")
ap item.inspect
puts item.class
## result
"#<Watir::Div: located: false; {:class=>\"itemSpace\", :tag_name=>\"div\"}>"
Watir::Div
uj5u.com熱心網友回復:
我不清楚你的問題。但我在這里列印了鏈接標題和第一部分文本。
b.divs(class: 'itemContainer').each do |div|
p div.a.title
p div.a.div.text
end
輸出
"Click here to learn more about this product"
"Alpha"
"Click here to learn more about this product"
"Bravo"
"Click here to learn more about this product"
"Charlie"
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/426760.html
上一篇:使用標題單元格文本定位表格單元格
