使用imacro刮擦动态数据以进行分析

时间:2015-06-17 13:22:42

标签: web-scraping imacros


我想用imacro来抓取动态数据(每4秒可刷新一次并且它是一个数字)并表示该数字随着时间的推移而变化(或任何其他方式)。

我该怎么做? Imacro,据我所知,可以获得数据,但可以废弃动态数据。

代码来自Flashscore上的篮球比赛,正好是2支球队之间的得分表:
这是一个游戏桌的例子

<table id="parts" class="parts-first horizontal">
    <tbody>
            <tr class="odd">
                <td class="score"><span class="rb">69</span</td>
                <td class="score part"><span class="p1_home">31</span></td>
            </tr>
            <tr class="even">
                <td class="score"><span class="rb">63</span></td>
                <td class="score part"><span class="p1_away">17</span></td>
            </tr>
    </tbody>
</table>

给出这两行数据:
                                                   69                     31                 
                                     63                     17                               

1 个答案:

答案 0 :(得分:0)

以下是代码中更详细的答案。

TAG POS=1 TYPE=TD ATTR=CLASS:"score" EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/\\d+/)[0];")
TAG POS=1 TYPE=TD ATTR=CLASS:"score part" EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=scores.csv
TAG POS=2 TYPE=TD ATTR=CLASS:"score" EXTRACT=TXT
SET !EXTRACT EVAL("'{{!EXTRACT}}'.match(/\\d+/)[0];")
TAG POS=2 TYPE=TD ATTR=CLASS:"score part" EXTRACT=TXT
SAVEAS TYPE=EXTRACT FOLDER=* FILE=scores.csv
WAIT SECONDS=4

以循环模式播放此宏(按钮'播放(循环)'),最大值。循环次数等于一个非常大的整数(例如99999)。