使用JS匹配价格

时间:2018-09-11 07:58:10

标签: javascript

我正在尝试从某个网站上获取价格,并通过匹配它们来找到最便宜的一个。

我编写了一个脚本,该脚本将单击按钮,以便查看所有价格并选择它们。接下来我该怎么办?

这是我的代码:

var rooms = document.querySelectorAll(" .btn-a-offers");
console.log(rooms);
for (var room=0;room<rooms.length;room++){
  rooms[room].click();
}
var prices = document.querySelectorAll(" .li-right-side>strong");
console.log(price);
for(var price=0; price<price.length;price++){

}

我也只需要获取价格,而无需货币符号

如何从该标签中获取价格?

2 个答案:

答案 0 :(得分:0)

使用元素的innerText:

var prices = document.querySelectorAll(" .li-right-side>strong");
console.log(price);
for(var price=0; price<price.length;price++){
     console.log(prices[price].innerText);
}

答案 1 :(得分:0)

尝试innerHTML或innerText:

document.querySelector("#offer2 .pri_room_rates strong").innerHTML

var prices = [];
document.querySelectorAll(".pri_room_rates strong").forEach(function(price) {
  prices.push(parseFloat(price.innerHTML.replace(/[^0-9.]/g,"")))
})
console.log(
  Math.min(...prices).toFixed(2) // the lowest found
)
<div id="offer1">
  <ul>
    <li>
      <div class="pri_room_rates">
        <div></div>
        <div><strong>£200.00</strong></div>
    </li>
  </ul>
  <div>
<div id="offer2">
  <ul>
    <li>
      <div class="pri_room_rates">
        <div></div>
        <div><strong>£300.00</strong></div>
    </li>
  </ul>
  <div>
  
  <div id="offer3">
  <ul>
    <li>
      <div class="pri_room_rates">
        <div></div>
        <div><strong>£100.00</strong></div>
    </li>
  </ul>
  <div>