将html表保存到excel中

时间:2011-07-26 16:31:06

标签: html excel html-table

我必须编写一个程序,定期读取网页并将该页面上的表格中的某些数据复制到Excel电子表格中。我不知道从哪里开始或者什么编程语言适合这个项目。我知道一点C ++和Matlab编程。任何人都可以提供建议,指出我正确的方向或建议做类似的开源项目吗?

3 个答案:

答案 0 :(得分:2)

要扩展Oliver的观点,如果您可以在XML文件中获取表格数据,Excel允许您为自己创建一个“模板”,将XML文件的节点映射到各个单元格。然后,您只需更新XML数据。

当然,我们假设您的数据来自外部数据源。

答案 1 :(得分:2)

也许这会有用..

<html>
<head>
<script type="text/javascript">
    function CreateExcelSheet() {
        var x = myTable.rows;

        var xls = new ActiveXObject("Excel.Application");
            xls.visible = true;
            xls.Workbooks.Add;
        for (i = 0; i < x.length; i++) {
            var y = x[i].cells;
            for (j = 0; j < y.length; j++) {
                xls.Cells( i+1, j+1).Value = y[j].innerText;
            }
        }
    }
</script>
</head>
<body>

<form>
    <input type="button" onclick="CreateExcelSheet()" value="Create Excel Sheet">
</form>

<table id="myTable" border="1">
    <tr>
        <td>Name</td>
        <td>Age</td>
    </tr>
    <tr>
        <td>Shivani</td>
        <td>25</td>
    </tr>
    <tr>
        <td>Naren </td>
        <td>28</td>
    </tr>
    <tr>
        <td>Logs</td>
        <td>57</td>
    </tr>
    <tr>
        <td>Kas</td>
        <td>54</td>
    </tr>
    <tr>
        <td>Sent</td>
        <td>26</td>
    </tr>
    <tr>
        <td>Bruce</td>
        <td>7</td>
    </tr>
</table>

</body>
</html>

答案 2 :(得分:1)

我可能会通过阅读网页就好像它是一个XML文档,并将相关部分转换为.csv格式。您可以使用许多不同的语言执行此操作,.csv是一种非常简单易用的格式。

我不知道Matlab在处理XML和Web方面有多好,但C / C ++对于这类事情来说往往非常笨重和笨拙。如果您想尝试学习另一种编程语言,请尝试使用Python - 它易于使用,非常直观,可以处理XML和Web内容。您可以使用其HTML Parser来查找页面的正确元素,并执行一些简单的文件写入以将其放入.csv格式。