在Matlab中从iframe中提取数字

时间:2014-09-23 00:43:57

标签: matlab iframe

我想提取足球的一些统计数据,我遇到了足球道。

问题是iframe

中有一些统计信息

示例网址:     http://pt.soccerway.com/matches/2014/09/20/spain/primera-division/club-atletico-de-madrid/real-club-celta-de-vigo/1821403/?ICID=PL_MS_04

该区域的html代码是:

<h2>General Game Stats Chart</h2>


<div class="content  ">
  <div class="block_match_stats_plus_chart real-content clearfix " id="page_match_1_block_match_stats_plus_chart_10">

  <iframe src="./Almería vs. Villarreal - 19 Agosto 2013 - Soccerway_files/saved_resource.html" style="width: 550px; height: 300px; overflow-y: hidden;" frameborder="no" allowtransparency="true" scrolling="no"> </iframe>
  </div>
</div>

与我想要的相对应的部分是:enter image description here

我想要的只是数字。有什么建议可以解决这个问题吗?

我的想法是将其保存为图片,然后在文件交换中使用this,但我不知道如何将其保存为图片。

1 个答案:

答案 0 :(得分:1)

如果您在问题中打开网址的HTML代码,您会看到该图由以下部分生成:

  

<iframe src='/charts/statsplus/1821403/' style='width: 550px; height: 300px; overflow-y: hidden;' frameborder='no' allowtransparency="true" scrolling="no"> </iframe>

所以你要做的就是使用完整的URL保存该文件:

  

http://pt.soccerway.com/charts/statsplus/1821403/

获取的文件是HTML,而不是图像文件。因此,您可以直接提取数字(无需光学字符识别)。只需将其保存如下

urlwrite('http://pt.soccerway.com/charts/statsplus/1821403/','file.html')

然后您可以解析获得的file.html以获取数字。例如,Cantos(角球)的数字在这部分:

  

<tr> <td class='legend left value'>6</td> <td colspan='4' class='legend title'>Cantos</td> <td class='legend right value'>3</td> </tr>

如您所见,'legend left value'包含6个(对应于左侧球队的数字,马德里竞技)和'legend right value'包含3个(右侧球队,Celta de Vigo):