DEV Community

Lawrence Lagerlof
Lawrence Lagerlof

Posted on

Stop copy-pasting tables from websites: This Firefox and Chrome extension does it better

How many times have you found yourself manually copying data from a website table, cell by cell, into a spreadsheet or trying to format it for documentation? If you're a developer, researcher, or anyone who works with data, you've definitely been there.

I built Website Table Exporter to solve this exact problem. It's a Firefox extension that automatically detects HTML tables on any website and adds export buttons right where you need them.

Website Table Exporter in action

The Problem

Whether you're:

  • πŸ“Š Analyzing competitor pricing tables
  • πŸ“ Documenting API responses in Markdown
  • πŸ” Researching data from academic databases
  • πŸ§ͺ Testing with realistic datasets
  • πŸ“ˆ Building dashboards with real-world data

...you've probably wasted hours manually reformatting table data. Most websites don't provide export functionality, and browser dev tools aren't exactly user-friendly for this.

The Solution

Website Table Exporter automatically adds three export buttons to every HTML table you encounter:

πŸ—‚οΈ CSV Export

Perfect for spreadsheet analysis. Headers are quoted, numeric data stays numeric:

"Product","Price","Stock" "Laptop",899,15 "Mouse",25,42 "Keyboard",75,28 
Enter fullscreen mode Exit fullscreen mode

πŸ”§ JSON Export

Ideal for developers. Maintains proper data types:

[ { "Product": "Laptop", "Price": 899, "Stock": 15 }, { "Product": "Mouse", "Price": 25, "Stock": 42 } ] 
Enter fullscreen mode Exit fullscreen mode

πŸ“ Markdown Export

Great for documentation and README files:

| Product | Price | Stock | | --- | --- | --- | | Laptop | 899 | 15 | | Mouse | 25 | 42 | | Keyboard | 75 | 28 | 
Enter fullscreen mode Exit fullscreen mode

Smart Features That Actually Matter

🧠 Intelligent Data Type Detection: The extension analyzes each column to determine if it contains numeric data, preserving data types in JSON and avoiding unnecessary quotes in CSV.

⚑ Dynamic Table Support: Works with JavaScript-generated tables and SPAs. The extension uses a MutationObserver to detect tables added after page load.

πŸŽ›οΈ Toggle Control: Hide/show buttons across all pages with the popup. Perfect when you need a clean view.

⚠️ Merged Cell Warnings: Alerts you when tables contain merged cells that might affect export quality.

πŸ”’ Privacy-First: Only requires activeTab and clipboardWrite permissions. No data collection, everything stays local.

Installation

Top comments (0)