Конвертируйте HTML таблицу в CSV или JSON
Tool guide
Paste the raw markup of a table and get the same rows back twice over: as CSV that Excel and Google Sheets open directly, and as a JSON array of objects keyed by the header row. It is the workaround for pages that show you a table but never offer an export button, such as an internal dashboard or a documentation page. Parsing runs in your own browser tab, so the markup never leaves the machine. See also: build an HTML table from a JSON array, open the exported CSV as a spreadsheet, line up the columns and preview the CSV.
Open developer tools, find the table element, choose Copy outer HTML and paste it into «HTML Table Input». «To CSV» gives you comma-separated rows and «Download» saves them as a file that Excel opens directly. Google Sheets takes the same file through File, then Import.
They are taken from the first row of the table, so that row needs to be the header. If your markup starts straight with data, the keys end up being the values of the first record. Add a header row of th cells before converting, or rename the keys afterwards in your editor.
Merged cells are not expanded. Each cell appears once, so a row with a colspan comes out shorter than its neighbours and the columns shift. Flatten a multi-level header down to a single header row before pasting, and make sure every row carries the same number of cells.
Nothing needs doing: a cell holding a comma, a semicolon, a quote or a line break is wrapped in double quotes by the converter, and an inner quote is doubled, exactly as CSV requires. Excel and Google Sheets read such a field as one column. Do not add the quotes yourself — that only breaks the result, because yours get escaped as part of the text.
The file is written as UTF-8, and Excel often assumes a legacy code page when a CSV is opened by double-clicking. Import it through Data, then From Text/CSV, and pick Unicode UTF-8 as the file origin. Opening the same file in Google Sheets also detects the encoding correctly.
No. The page parses your HTML with the browser's own parser and writes the result into the box next to it; no request carrying your data is made. That makes it safe to paste a table copied out of an internal admin panel, and closing the tab clears everything.
Before: ItemPriceCable390Router4290
After: Item,Price Cable,390 Router,4290
Before: Press «To JSON» on the markup above
After: [{"Item":"Cable","Price":"390"},{"Item":"Router","Price":"4290"}] Your rating and feedback help decide what to improve next.