Excel VBA web scaping元素挑战

Excel VBA web scaping元素挑战,vba,excel,Vba,Excel,我正在尝试从一个旅游网站收集定价数据 下面是HTML,我想检索数字2145.66并将其放入Excel单元格 <ul class="hotelresults"> <li class="image"><img src="http://images.libertytravel.com/shared/cpl/fcl/images/upload/suppliers/H/AUA/REM/img_148208_MEDIUM.jpg" width="120" onerror="

我正在尝试从一个旅游网站收集定价数据

下面是HTML,我想检索数字2145.66并将其放入Excel单元格

<ul class="hotelresults"> 

<li class="image"><img src="http://images.libertytravel.com/shared/cpl/fcl/images/upload/suppliers/H/AUA/REM/img_148208_MEDIUM.jpg" width="120" onerror="this.src='/images/book.libertytravel.com/no-pic.gif';"></li>
<li class="detail">
<h4>Renaissance Marina Hotel &nbsp;<img src="http://static0.traveltek.net/images/book.libertytravel.com/1star.png" alt="Star"><img src="http://static0.traveltek.net/images/book.libertytravel.com/1star.png" alt="Star"><img src="http://static0.traveltek.net/images/book.libertytravel.com/1star.png" alt="Star"><img src="http://static0.traveltek.net/images/book.libertytravel.com/1star.png" alt="Star"></h4>
<span class="myTime"></span><span class="hotelPref"></span>
<h5>Aruba</h5>
<span id="desc_555_0.1">Experience a fresh twist on stay and play in a stylish, sophisticated atmosphere at the Renaissance Aruba Resort and Casino. </span><a href="/fusion/searchsinglehotel.pl?sessionkey=F5AFD4B1-782Cl4A8B-9B26-AC8EAE88C1E5&amp;chosenhotel=555_0.1&amp;chosenflight=617_0.0">See Details</a>
</li>
<li class="price">
    <script language="Javascript">
Event.observe(window, "load", function() {

$$('span.roomprice').each(function(element) {
         element.innerHTML = properrounding(element.innerHTML, 2);
     });

});
</script>

<table width="100%" cellspacing="0" cellpadding="0" border="0" class="roomsrow">
    <tr class="hide">
        <td colspan="3" class="sectionHeader">
            <a href="#" onclick="showmore('hotelDetails'); return false">
                <div id="hotelExpand">
                    <div class="plusMinus"></div>
                </div> Show/Hide extra room selections
            </a>
        </td>
    </tr>
    <tr>
        <td colspan="3" style="border:none">

            <div id="hotelDetails" style="display:none">

                <table width="100%" cellpadding="0" cellspacing="0">        
                    <tr class="hide">
                        <th align="left">Room Description</th>
                        <th align="right">Total Basket Cost</th>
                        <th>&nbsp;</th>
                    </tr>
                    <tr>
                    <td colspan="3">
                    <script language="Javascript">
Event.observe(window, "load", function() {

$('rightprice_div_555_0.1_555:0').innerHTML = properrounding('2145.66', 2);
但是,这意味着没有返回我正在寻找的费率/数字


欢迎提供任何帮助/建议

您可以为该字符串解析
document.body.innerHTML
。假设您正在使用
properrounding
以感兴趣的部分为目标

仅使用HTML作为指南,您将

Debug.Print Replace(Split(Split(.document.body.innerHTML, " properrounding(")(2), ", 2")(0), Chr$(39), vbNullString)

您可以为该字符串解析
document.body.innerHTML
。假设您正在使用
properrounding
以感兴趣的部分为目标

仅使用HTML作为指南,您将

Debug.Print Replace(Split(Split(.document.body.innerHTML, " properrounding(")(2), ", 2")(0), Chr$(39), vbNullString)

您的代码在哪里无法实现您想要的功能?当您循环使用它时会得到什么结果?您期望得到什么?MsgBox(TDelements2.Item(i).innertext)是代码失败的地方。在将其放入excel单元格之前,我使用msgbox查看返回的内容。我希望从msgbox中返回的网站中获得费率。是否“正确”(“存在于其他任何地方?您可以对此进行拆分。您的代码在哪里没有达到您想要的效果?当您循环执行该操作时会得到什么结果?您期望得到什么?msgbox(TDelements2.Item(I).innertext)是代码失败的地方。在将其放入excel单元格之前,我使用msgbox查看返回的内容。我希望从msgbox中返回的网站获取速率。是否为“properrounding”(“在其他任何地方存在?”),您可以对此进行拆分。