Convert HTML Table To CSV/Excel: Difference between revisions

From LemonWiki共筆
Jump to navigation Jump to search
 
(3 intermediate revisions by the same user not shown)
Line 12: Line 12:




== Approach 2 ==
== Approach 2: Using the Google Drive ==
Pros: The table content was imported automatically.
Pros: The table content was imported automatically.


Line 23: Line 23:
# Save file as CSV/Excel
# Save file as CSV/Excel


Checking the rows of data after import
Checking the rows of data after import on the {{Chrome}}
* Inspect the table element on the {{Chrome}}
* Right click the table and then click the '''Inspect''' item of the menu.
* (optional) add tableId if the table has no id ex: {{kbd | key =<nowiki><table ... ... id="tableId"></nowiki>}}
* (optional) add tableId if the table has no id ex: {{kbd | key =<nowiki><table ... ... id="tableId"></nowiki>}}. Howto: [https://developers.google.com/web/tools/chrome-devtools/iterate/inspect-styles/ Inspect and Edit Pages and Styles | Web Tools - Google Developers].
* check the count number of rows: Go to [https://developer.chrome.com/devtools Chrome DevTools]. Key in the following code to [https://developer.chrome.com/devtools/docs/console console].  
* Check the count number of rows: Go to [https://developer.chrome.com/devtools Chrome DevTools]. Key in the following code to [https://developer.chrome.com/devtools/docs/console console].  
<pre>
<pre>
var tableId = "tableId";
var tableId = "tableId";
Line 52: Line 52:


使用 chrome 檢查表格資料列數
使用 chrome 檢查表格資料列數
* 點選網頁上的表格,按滑鼠右鍵選擇選單上的「'''檢查'''」
* 選取網頁語法,按右鍵 Edit as HTML
* 選取網頁語法,按右鍵 Edit as HTML
* 手動幫表格加上 id ex: {{kbd | key =<nowiki><table ... ... id="tableId"></nowiki>}}
* 手動幫表格加上 id ex: {{kbd | key =<nowiki><table ... ... id="tableId"></nowiki>}}

Latest revision as of 11:33, 4 July 2016


Approach 1[edit]

Pros: Keep the original text format such as link, color

Cons: Copy and paste the content manually

Steps:

  1. Copy the HTML table manually
  2. Paste to Microsoft Excel or LibreOffice Calc
  3. Save file as CSV/Excel


Approach 2: Using the Google Drive[edit]

Pros: The table content was imported automatically.

Cons: Text only. Losing the original text format such as link, color.

Steps:

  1. Go to Google Drive (Google 雲端硬碟)
  2. Add new spreadsheet
  3. Using IMPORTHTML function. Key in the content into the cell =IMPORTHTML("URL of HTML Table","table",1) 1 means the first table occurred on the web page
  4. Save file as CSV/Excel

Checking the rows of data after import on the Chrome Browser chrome.png

var tableId = "tableId";
var tbody_exists = document.getElementById(tableId).getElementsByTagName("tbody").length;
if( tbody_exists == 1 ){
	// If the table contains the <tbody> tag
	var rows = document.getElementById(tableId).getElementsByTagName("tbody")[0].getElementsByTagName("tr").length;
	
}else{
	// If the table NOT contains the <tbody> tag
	var rows = document.getElementById(tableId).getElementsByTagName("tr").length;
	
}
console.log("count number of rows: " + rows);
  • And press the Enter key to get the count number of rows.
  • check the count number of column: [1]
 var tableId = "tableId"; 
 var column_count = document.getElementById(tableId).rows[0].cells.length;
 console.log("count number of column: " + rows);
  • And press the Enter key to get the count number of column.


使用 chrome 檢查表格資料列數

  • 點選網頁上的表格,按滑鼠右鍵選擇選單上的「檢查
  • 選取網頁語法,按右鍵 Edit as HTML
  • 手動幫表格加上 id ex: <table ... ... id="tableId">
  • 在網頁原始碼別處點一下,自動儲存修改
  • 檢查資料列數
 
var tableId = "tableId";
var tbody_exists = document.getElementById(tableId).getElementsByTagName("tbody").length;
if( tbody_exists == 1 ){
	// 如果網頁表格包含 <tbody> tag
	var rows = document.getElementById(tableId).getElementsByTagName("tbody")[0].getElementsByTagName("tr").length;
	
}else{
	// 如果網頁表格不包含 <tbody> tag
	var rows = document.getElementById(tableId).getElementsByTagName("tr").length;
	
}
console.log("count number of rows: " + rows);

  • Enter,取得資料列數
  • 檢查資料欄位數
 var tableId = "tableId"; 
 var column_count = document.getElementById(tableId).rows[0].cells.length;
 console.log("資料欄數: " + rows);
  • Enter,取得資料欄位數

References[edit]

further reading