繁体   English   中英

如何使用Javascript将数据从网站导出到csv文件?

[英]How to export data from website to csv file using Javascript?

我从一个网站上看到了这个代码,显然它甚至对我的朋友也适用于其他人,但不适合我。 我正在使用Nodejs并表达。 我错误地做错了还是错过了任何重要的部分? 单击按钮后,没有弹出文件目录或任何内容,也没有错误。

这是脚本中的代码。

<script>
        function downloadCSV(csv, filename) {
            var csvFile;
            var downloadLink;
            //var charset = "UTF-8";

            // CSV File
            csvFile = new Blob([csv], {type: "text/csv"});

            // download link
            downloadLink = document.createElement("a");

            // file name
            downloadLink.download = filename;

            // create link to file
            downloadLink.href = window.URL.createObjectURL(csvFile);

            // hide download link
            downloadLink.style.display = "";

            // add link to DOM
            document.body.appendChild(downloadLink);

            // click download link
            downloadLink.click();
        }

        function exportData(html,filename) {
            var csv = [];
            var rows = document.querySelectorAll("table tr");

            for (var i=0; i<rows.length; i++) {
                var rows = [], cols = rows[i].querySelectorAll("td, th");

                for (var j=0; j<cols.length; j++) {
                    if (j == 7) {
                        row.push("'" + cols[j].innerText + "'");
                    } 
                    else if (j == 2){
                        row.push("'" + cols[j].innerText + "'");
                    } 
                    else {
                        row.push(cols[j].innerText);
                    }
                }

                csv.push(row.join(","));
            }

            // download csv file
            downloadCSV(csv.join("\n"), filename);

        }
    </script>

这是设计部分的代码。

  <button type="button" class="btn btn-primary" id="exportBtn" onclick="exportData(null,'scrapedData.csv')">导出</button>

这个最小的例子正在运作

  function downloadCSV(csv, filename) { var csvFile; var downloadLink; // CSV File csvFile = new Blob([csv], {type: "text/csv"}); // download link downloadLink = document.createElement("a"); // file name downloadLink.download = filename; // create link to file downloadLink.href = window.URL.createObjectURL(csvFile); // hide download link downloadLink.style.display = ""; // add link to DOM document.body.appendChild(downloadLink); // click download link downloadLink.click(); } function exportData(html,filename) { var csv = []; csv.push('a'); csv.push('b'); csv.push('c'); csv.push('d'); csv.push('e'); // download csv file downloadCSV(csv.join("\\n"), filename); } 
 <button onClick="exportData(null, 'testCSV.csv')">download</button> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM