DatafetchPro
    May 21, 20265 min read0 views

    How to Export Amazon Products to CSV Fast?

    Need a quick Amazon CSV exporter? Export product titles, prices, ratings, and links using this simple web scraping automation tool.

    Amazon product research can take hours when you manually copy titles, prices, ratings, and links. This simple Tampermonkey userscript speeds things up by turning Amazon search pages into a quick CSV export tool.




    The script adds a clean floating export button directly on Amazon search results. With one click, it collects product titles, prices, ratings, review counts, and URLs, then downloads everything into a CSV file instantly.

    It’s useful for sellers, virtual assistants, researchers, and marketers who work with product data extraction, web scraping, or ecommerce research. Instead of wasting time copying rows manually, you can organize Amazon listings for analysis, lead generation, competitor tracking, or bulk product monitoring.

    The script also works smoothly with Amazon’s dynamic page loads, making the export process faster and more reliable for daily web automation tasks.

    Related keywords: Amazon scraper, CSV exporter, ecommerce scraping, product data collection, browser automation, Tampermonkey script, product research automation, scraping tools, marketplace data extraction.



    // ==UserScript==
    // @name Amazon Product Exporter Pro
    // @namespace http://tampermonkey.net/
    // @version 2.0
    // @description Export Amazon search results to CSV with a clean UI
    // @author You
    // @match https://www.amazon.com/*
    // @require https://cdnjs.cloudflare.com/ajax/libs/PapaParse/5.4.1/papaparse.min.js
    // @grant none
    // @run-at document-idle
    // ==/UserScript==

    (function() {
    'use strict';

    // Prevent multiple initializations
    if (window.amazonExportInitialized) return;
    window.amazonExportInitialized = true;

    function init() {
    if (window.location.href.includes("/s?k=")) {
    createExportButton();
    }
    }

    function createExportButton() {
    if (document.getElementById("EX_BTN")) return;

    const btn = document.createElement('div');
    btn.id = "EX_BTN";
    btn.innerHTML = `
    <div style="font-weight: bold; font-size: 14px;">CSV</div>
    <div style="font-size: 10px;">EXPORT</div>
    `;

    // Modern UI Styling
    Object.assign(btn.style, {
    background: "#232f3e", // Amazon Dark Blue
    color: "white",
    cursor: "pointer",
    position: "fixed",
    right: "0px",
    top: "50%",
    transform: "translateY(-50%)",
    width: "60px",
    height: "60px",
    display: "flex",
    flexDirection: "column",
    alignItems: "center",
    justifyContent: "center",
    zIndex: "9999",
    borderTopLeftRadius: "8px",
    borderBottomLeftRadius: "8px",
    boxShadow: "-2px 2px 10px rgba(0,0,0,0.3)",
    transition: "all 0.3s ease",
    fontFamily: "Arial, sans-serif"
    });

    // Hover Effects
    btn.onmouseenter = () => btn.style.background = "#f3a847"; // Amazon Orange
    btn.onmouseleave = () => btn.style.background = "#232f3e";

    btn.onclick = () => runExport();

    document.body.appendChild(btn);
    }

    function runExport() {
    const items = document.querySelectorAll('div[data-asin][role="listitem"]');
    const extractedData = [];

    for (const item of items) {
    // Helper to safely get text or return "N/A"

    const x = item; // For consistency with previous code
    const title = x.querySelector(`div[data-cy="title-recipe"] a.a-link-normal h2`)?.textContent
    const price = x.querySelector(`span.a-price span`)?.textContent
    const ratings = x.querySelector(`a[aria-label*="ratings"] span`)?.textContent
    const reviewCount = x.querySelector(`div[data-cy="reviews-block"] div.a-size-small span`)?.textContent
    const link = x.querySelector(`div[data-cy="title-recipe"] a.a-link-normal`)?.href

    if (title !== "N/A") {
    extractedData.push({
    Title: title,
    Price: price,
    Rating: ratings,
    Reviews: reviewCount,
    URL: link
    });
    }
    }

    if (extractedData.length > 0) {
    const csv = Papa.unparse(extractedData);
    downloadCSV(csv, `Amazon_Export_${new Date().getTime()}.csv`);
    } else {
    alert("No products found to export. Make sure you are on a search results page.");
    }
    }

    function downloadCSV(data, filename) {
    const blob = new Blob([data], { type: 'text/csv;charset=utf-8;' });
    const url = URL.createObjectURL(blob);
    const link = document.createElement('a');
    link.href = url;
    link.setAttribute('download', filename);
    document.body.appendChild(link);
    link.click();
    document.body.removeChild(link);
    }

    // Listen for SPA navigation (Amazon's internal page loads)
    window.addEventListener("urlchange", () => {
    setTimeout(init, 2000); // Wait for content to settle
    });

    // Run on initial load
    init();

    })();
    0