functiontableToPandasJson(table) { // Get the headers from the first row of the table head var thead = table.getElementsByTagName('thead')[0]; var headerCells = thead.getElementsByTagName('th'); var headers = []; for (var i = 0; i < headerCells.length; i++) { headers.push(headerCells[i].innerText); }
// Initialize the result object, one array per header var result = {}; for (var j = 0; j < headers.length; j++) { result[headers[j]] = []; }
// Go through each row in tbody var tbody = table.getElementsByTagName('tbody')[0]; var rows = tbody.getElementsByTagName('tr'); for (var r = 0; r < rows.length; r++) { var cells = rows[r].getElementsByTagName('td'); for (var c = 0; c < headers.length; c++) { // Always treat as text var cellText = cells[c].innerText; result[headers[c]].push(cellText); } }