How to scrape a website to Excel
You found a page full of useful data — a product list, a table of prices, a directory — and you want it in Excel so you can sort, filter and do the maths. Here are four honest ways to get it there, from a formula-free built-in tool to a two-click extension, with the trade-offs of each.
What "scraping to Excel" actually means
Web scraping is simply reading the data that a page displays and copying it into a structured format — rows and columns. The web page already contains the data as HTML; the job is to pull out the parts you care about and drop them into a spreadsheet. You do not need a server or a programming background for most everyday jobs. The right method depends on how the page is built.
Method 1 — Copy and paste (the 30-second option)
For a small, clean HTML table, plain copy-paste often works. Select the table with your mouse, press Ctrl+C (or Cmd+C), click a cell in Excel and paste. Excel usually keeps the column structure.
- Highlight the table rows on the web page.
- Copy, then in Excel use Paste Special > Text or Match Destination Formatting to avoid dragging in stray styles.
- Clean up any merged headers by hand.
It is fast, but it falls apart on long lists, cards that are not real tables, and anything spread across several pages.
Method 2 — Excel's built-in "From Web" (Power Query)
Modern Excel can import HTML tables directly, no add-in required.
- Open Excel and go to Data > Get Data > From Other Sources > From Web (on some versions it is Data > From Web).
- Paste the page URL and click OK.
- In the Navigator, pick the table Excel detected and click Load.
- Use Transform Data first if you want to remove columns or fix headers before loading.
This is genuinely good for stable, well-formed tables — and it can refresh on demand. Its limits: it only sees content that arrives as real HTML tables, so it commonly misses lists, product cards and anything a page draws with JavaScript after loading. On those pages the Navigator shows nothing useful.
Method 3 — A no-code browser extension (the easy path)
When the page is a list of cards, an infinite feed, or a table that Power Query cannot see, a browser extension that reads the rendered page is the simplest fix. This is where ScrapeSheet fits: it runs on the page you already have open, detects the tables and lists for you, and exports to Excel (.xlsx), CSV or the clipboard.
- Install ScrapeSheet from the Chrome Web Store and pin it.
- Open the page with the data you want and click the ScrapeSheet icon.
- Click Extract. It picks up the tables and lists automatically; for messier pages you can describe the columns you want in plain language.
- Choose Export to Excel and open the
.xlsx.
Because it reads what the browser has actually rendered, it handles the JavaScript-heavy pages that trip up Method 2, and it can follow pagination and infinite scroll — see our guide on scraping multiple pages.
Method 4 — Code (only when you really need it)
For large, repeatable or scheduled jobs, a script in Python (with requests and BeautifulSoup, or pandas.read_html) or a headless browser gives full control. It is powerful but overkill for a one-off export, and it means maintaining code when sites change their markup. Most people never need it.
Which method should you pick?
- One clean table, one time: copy-paste or From Web.
- A table you will re-import regularly: From Web, so it refreshes.
- Lists, cards, JavaScript pages, or many pages: a no-code extension like ScrapeSheet.
- Thousands of pages on a schedule: a maintained script.
Scrape responsibly
Whatever the method, be considerate: check the site's terms, avoid hammering servers, and take extra care with personal data. We cover this in is web scraping legal?
FAQ
What is the easiest way to scrape a website to Excel?
A no-code browser extension: open the page, click Extract, export to .xlsx. Excel's From Web tool is great for clean HTML tables but misses lists and JavaScript-rendered content.
Can Excel scrape a website by itself?
Yes, with Data > Get Data > From Web (Power Query). It imports detected HTML tables, but can miss cards and dynamic content.
Do I need to code?
No. From Web and extensions like ScrapeSheet need no programming. Code is only worth it for large, automated pipelines.