PageSourceSearch

https://datascraper.cc/changelog/

html datascraper.cc collected 2026-09-24 14:35:40 UTC 25,220 bytes, 516 lines download raw bytes

1<!doctype html>
2<html lang="en">
3  <head>
4    <meta charset="UTF-8" />
5<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
6<meta name="viewport" content="width=device-width, initial-scale=1.0" />
7<link rel="preconnect" href="https://fonts.googleapis.com" />
8<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
9<link
10  href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap"
11  rel="stylesheet"
12/>
13<link rel="stylesheet" href="/assets/css/output.css" />
14<title>
15  What's New — Data Scraper
16</title>
17<meta
18  name="description"
19  content="Latest updates and improvements to Data Scraper Chrome extension."
20/>
21<link rel="canonical" href="https://datascraper.cc/changelog/" />
22<meta property="og:type" content="website" />
23<meta property="og:url" content="https://datascraper.cc/changelog/" />
24<meta
25  property="og:title"
26  content="What's New — Data Scraper"
27/>
28<meta
29  property="og:description"
30  content="Latest updates and improvements to Data Scraper Chrome extension."
31/>
32<meta name="twitter:card" content="summary" />
33<meta
34  name="twitter:title"
35  content="What's New — Data Scraper"
36/>
37<meta
38  name="twitter:description"
39  content="Latest updates and improvements to Data Scraper Chrome extension."
40/>
41<!-- Google tag (gtag.js) -->
vendor: 64 bytes, lines 41-42
41
42<script async src="https://www.googletagmanager.com/gtag/js?id=
42AW-17878147058
vendor: 12 bytes, line 42
42"></script>
43<script>
44  window.dataLayer = window.dataLayer || []
45  function gtag() {
46    dataLayer.push(arguments)
47  }
48  gtag("js", new Date())
49  gtag("config", "AW-17878147058")
50</script>
50
51
52<meta
53  name="posthog-event"
54  data-event="view_changelog"
55  data-props="{}"
56  data-url-params="[&quot;news_id&quot;]"
57/>
58
59
60<script type="module">
61  import posthog from "https://cdn.jsdelivr.net/npm/posthog-js@latest/+esm"
62  posthog.init("phc_a2AVovduIFBESNRwbJFUPqVQWF3SAnqs9RRCK99fWCT", {
63    api_host: "https://api.datascraper.cc/ph",
64    ui_host: "https://eu.posthog.com",
65    persistence: "memory",
66    disable_external_dependency_loading: true,
67  })
68  window.__ph = posthog
69
70  var UTM_KEYS = ["utm_source", "utm_medium", "utm_campaign", "utm_content", "utm_term"]
71  var searchParams = new URLSearchParams(window.location.search)
72
73  // CWS strips URL params, so stash first-touch UTM in localStorage; the same-origin welcome page reads it post-install.
74  var urlUtm = Object.fromEntries(UTM_KEYS.map((key) => [key, searchParams.get(key)]).filter(([, value]) => value))
75  if (Object.keys(urlUtm).length && !localStorage.getItem("ds_utm")) {
76    localStorage.setItem("ds_utm", JSON.stringify(urlUtm))
77    posthog.capture("landing_visit", urlUtm)
78  }
79
80  function readStoredUtm() {
81    try {
82      return JSON.parse(localStorage.getItem("ds_utm") || "{}")
83    } catch (e) {
84      return {}
85    }
86  }
87
88  function identifyAndCapture(uid) {
89    if (!uid) return
90    posthog.identify(uid)
91    var storedUtm = readStoredUtm()
92    if (Object.keys(storedUtm).length) posthog.setPersonProperties(storedUtm)
93
94    var eventMeta = document.querySelector('meta[name="posthog-event"]')
95    if (!eventMeta) return
96    var props = JSON.parse(eventMeta.dataset.props || "{}")
97    JSON.parse(eventMeta.dataset.urlParams || "[]").forEach((param) => (props[param] = searchParams.get(param)))
98    posthog.capture(eventMeta.dataset.event, props)
99  }
100
101  // uid arrives as a URL param, or via postMessage from the extension content script (src/content.js).
102  var urlUid = searchParams.get("uid")
103  if (urlUid) identifyAndCapture(urlUid)
104  else
105    window.addEventListener("message", function (event) {
106      if (event.data && event.data.type === "UID") identifyAndCapture(event.data.uid)
107    })
108</script>
108
109
110
111<script>
112  // Which backend this visit talks to. Only the extension build knows it is staging, so it opens
113  // these pages with ?staging=true. Both hosts come from _config.yml, never the query — these pages
114  // POST the session token. Sticky per tab: a provider's successUrl carries no query string.
115  ;(function () {
116    var STAGING_KEY = "ds_staging"
117    if (new URLSearchParams(location.search).get("staging") === "true") sessionStorage.setItem(STAGING_KEY, "1")
118    window.DS_API = sessionStorage.getItem(STAGING_KEY) ? "https://data-scraper.homelab.codebrix.io" : "https://api.datascraper.cc"
119  })()
120</script>
120
121
122  </head>
123  <body class="font-sans">
124    <div class="fixed inset-0 overflow-hidden pointer-events-none z-0 bg-slate-50">
125  <div
126    class="absolute -top-40 -left-40 w-[700px] h-[700px] rounded-full animate-aurora-1"
127    style="background: radial-gradient(circle, #ddd6fe, transparent 70%); opacity: 0.8; filter: blur(60px)"
128  ></div>
129  <div
130    class="absolute top-1/3 -right-40 w-[600px] h-[600px] rounded-full animate-aurora-2"
131    style="background: radial-gradient(circle, #f5d0fe, transparent 70%); opacity: 0.7; filter: blur(60px)"
132  ></div>
133  <div
134    class="absolute -bottom-40 left-1/3 w-[650px] h-[650px] rounded-full animate-aurora-3"
135    style="background: radial-gradient(circle, #cffafe, transparent 70%); opacity: 0.7; filter: blur(60px)"
136  ></div>
137  <div
138    class="absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-[500px] h-[500px] rounded-full"
139    style="background: radial-gradient(circle, #ede9fe, transparent 70%); opacity: 0.5; filter: blur(80px)"
140  ></div>
141</div>
142 <header class="fixed top-0 left-0 right-0 z-50 bg-white/70 backdrop-blur-xl border-b border-violet-200/50">
143  <div class="max-w-6xl mx-auto px-4 h-16 flex items-center justify-between">
144    <!-- Logo -->
145    <a href="/" class="flex items-center gap-2 text-slate-900 font-bold text-lg no-underline">
146      <svg
147  viewBox="0 0 96 96"
148  fill="none"
149  xmlns="http://www.w3.org/2000/svg"
150  class="w-6 h-6"
151  
152  aria-hidden="true"
153>
154  <path
155    d="M81.6699 57C81.9351 57 82.1894 57.1055 82.377 57.293C82.5645 57.4805 82.6699 57.7348 82.6699 58V72.71C82.6699 72.9752 82.7754 73.2295 82.9629 73.417C83.1504 73.6045 83.4047 73.71 83.6699 73.71H92C92.1866 73.7104 92.3691 73.7635 92.5273 73.8623C92.6856 73.9612 92.8133 74.1021 92.8955 74.2696C92.9776 74.437 93.0108 74.6241 92.9922 74.8096C92.9736 74.9953 92.9039 75.1725 92.79 75.3203L77.7998 95C77.7067 95.1241 77.586 95.2246 77.4473 95.294C77.3084 95.3634 77.1552 95.4004 77 95.4004C76.8448 95.4004 76.6916 95.3634 76.5527 95.294C76.414 95.2246 76.2933 95.1241 76.2002 95L61.2002 75.3604C61.0736 75.2127 60.9928 75.0309 60.9678 74.8379C60.9428 74.6448 60.9746 74.4477 61.0596 74.2725C61.1444 74.0976 61.2786 73.9515 61.4453 73.8516C61.6124 73.7516 61.8054 73.7021 62 73.71H70.3096C70.5748 73.71 70.83 73.6046 71.0176 73.417C71.2049 73.2295 71.3096 72.9751 71.3096 72.71L71.3301 58C71.3301 57.7348 71.4355 57.4805 71.623 57.293C71.8106 57.1055 72.0649 57 72.3301 57H81.6699ZM88.25 3.6929e-05C90.32 0.0921918 92.2825 0.947476 93.7598 2.40043C95.1837 3.81383 95.9895 5.734 96 7.74027V45.5H95.999V66.7998C95.9913 67.1766 95.9076 67.548 95.7529 67.8916C95.5983 68.2352 95.3763 68.5443 95.0996 68.7998C94.5114 69.3466 93.7376 69.6503 92.9346 69.6504C92.1314 69.6504 91.3578 69.3466 90.7695 68.7998C90.494 68.5431 90.2717 68.2341 90.1172 67.8907C89.9627 67.5473 89.8785 67.1762 89.8691 66.7998V45.5H66.3799V64C66.374 64.3761 66.2925 64.7472 66.1396 65.0909C65.9867 65.4345 65.7657 65.7439 65.4902 66C64.9441 66.5094 64.2359 66.8099 63.4902 66.8496H36.251V85.1905H48.3496C49.1515 85.1885 49.9242 85.4922 50.5098 86.0401C50.793 86.3022 51.0193 86.62 51.1738 86.9737C51.3283 87.3272 51.4082 87.7089 51.4082 88.0948C51.4082 88.4807 51.3284 88.8632 51.1738 89.2168C51.0193 89.5703 50.7929 89.8884 50.5098 90.1504C49.9243 90.6982 49.1514 91.002 48.3496 91H11.2305C8.28244 91.0124 5.44102 89.8959 3.29004 87.8799C2.2571 86.9155 1.43199 85.7501 0.866211 84.4551C0.300472 83.1602 0.0058257 81.7627 0 80.3496V7.74027C0.00507362 6.71392 0.219952 5.69935 0.630859 4.75883C1.04175 3.81843 1.64013 2.97154 2.38965 2.27054C3.95726 0.805991 6.02463 -0.00631119 8.16992 3.6929e-05H88.25ZM6.12988 80.3496C6.13342 80.9908 6.26737 81.6251 6.52344 82.2129C6.77958 82.8009 7.15289 83.3313 7.62012 83.7705C8.598 84.6872 9.89011 85.1954 11.2305 85.1905H30.1309V66.8496H6.12988V80.3496ZM6.12988 61H30.1309V45.5H6.12988V61ZM36.251 61H60.2598V45.5H36.251V61ZM6.12988 39.7002H30.1309V24.2002H6.12988V39.7002ZM36.251 39.7002H60.2598V24.2002H36.251V39.7002ZM66.3799 39.7002H89.8691V27.1104H89.8701V24.2002H66.3799V39.7002ZM8.12988 5.82035C7.59425 5.81585 7.07794 6.0199 6.69043 6.38969C6.50133 6.56218 6.34941 6.7727 6.24609 7.00687C6.14285 7.24097 6.08977 7.49418 6.08984 7.75004V18.3897H89.8701V7.74027C89.8702 7.48447 89.8171 7.23117 89.7139 6.99711C89.6106 6.76293 89.4586 6.55241 89.2695 6.37992C88.882 6.01006 88.3658 5.8051 87.8301 5.80961L8.12988 5.82035Z"
156    fill="url(#ext-icon-grad)"
157  />
158  <defs>
159    <linearGradient id="ext-icon-grad" x1="15.5" y1="12" x2="92.4651" y2="65.8409" gradientUnits="userSpaceOnUse">
160      <stop stop-color="#38BDF8" />
161      <stop offset="1" stop-color="#A78BFA" />
162    </linearGradient>
163  </defs>
164</svg>
165
166      <span>Data Scraper</span>
167    </a>
168
169    <!-- Desktop Nav -->
170    <nav class="hidden md:flex items-center gap-6">
171      <a href="/" class="text-slate-600 hover:text-slate-900 transition-colors text-sm font-medium no-underline"
172        >Home</a
173      >
174      <a
175        href="/changelog/"
176        class="text-slate-600 hover:text-slate-900 transition-colors text-sm font-medium no-underline"
177        >What's New</a
178      >
179      <a href="/roadmap/" class="text-slate-600 hover:text-slate-900 transition-colors text-sm font-medium no-underline"
180        >Roadmap</a
181      >
182      <a href="/pricing/" class="text-slate-600 hover:text-slate-900 transition-colors text-sm font-medium no-underline"
183        >Pricing</a
184      >
185      <a href="/contact/" class="text-slate-600 hover:text-slate-900 transition-colors text-sm font-medium no-underline"
186        >Contact</a
187      >
188      <a
189        href="https://chromewebstore.google.com/detail/nkkdeadncmkfpmoafagdoanfkipoogkl"
190        target="_blank"
191        rel="noopener noreferrer"
192        class="btn-primary-sm"
193      >
194        <i data-lucide="chrome" class="w-4 h-4"></i>
195        Install Extension
196      </a>
197    </nav>
198
199    <!-- Mobile menu button -->
200    <button
201      id="mobile-menu-btn"
202      class="md:hidden text-slate-600 hover:text-slate-900 p-2 bg-transparent border-none cursor-pointer"
203      aria-label="Toggle menu"
204    >
205      <i data-lucide="menu" class="w-6 h-6" id="menu-icon-open"></i>
206      <i data-lucide="x" class="w-6 h-6 hidden" id="menu-icon-close"></i>
207    </button>
208  </div>
209
210  <!-- Mobile Nav -->
211  <div id="mobile-menu" class="hidden md:hidden bg-white/95 backdrop-blur-xl border-t border-violet-200/50 px-4 pb-4">
212    <a
213      href="/"
214      class="block py-3 text-slate-600 hover:text-slate-900 transition-colors text-sm font-medium border-b border-violet-100/50 no-underline"
215      >Home</a
216    >
217    <a
218      href="/changelog/"
219      class="block py-3 text-slate-600 hover:text-slate-900 transition-colors text-sm font-medium border-b border-violet-100/50 no-underline"
220      >What's New</a
221    >
222    <a
223      href="/roadmap/"
224      class="block py-3 text-slate-600 hover:text-slate-900 transition-colors text-sm font-medium border-b border-violet-100/50 no-underline"
225      >Roadmap</a
226    >
227    <a
228      href="/pricing/"
229      class="block py-3 text-slate-600 hover:text-slate-900 transition-colors text-sm font-medium border-b border-violet-100/50 no-underline"
230      >Pricing</a
231    >
232    <a
233      href="/contact/"
234      class="block py-3 text-slate-600 hover:text-slate-900 transition-colors text-sm font-medium border-b border-violet-100/50 no-underline"
235      >Contact</a
236    >
237    <a
238      href="https://chromewebstore.google.com/detail/nkkdeadncmkfpmoafagdoanfkipoogkl"
239      target="_blank"
240      rel="noopener noreferrer"
241      class="mt-3 flex items-center justify-center gap-2 bg-gradient-to-r from-violet-500 to-fuchsia-500 text-white rounded-full px-5 py-2.5 text-sm font-semibold no-underline"
242    >
243      <i data-lucide="chrome" class="w-4 h-4"></i>
244      Install Extension
245    </a>
246  </div>
247</header>
248
249<script>
250  ;(function () {
251    var btn = document.getElementById("mobile-menu-btn")
252    var menu = document.getElementById("mobile-menu")
253    var iconOpen = document.getElementById("menu-icon-open")
254    var iconClose = document.getElementById("menu-icon-close")
255    btn.addEventListener("click", function () {
256      var isOpen = !menu.classList.contains("hidden")
257      menu.classList.toggle("hidden")
258      iconOpen.classList.toggle("hidden", !isOpen)
259      iconClose.classList.toggle("hidden", isOpen)
260    })
261  })()
262</script>
262
263
264    <main class="relative z-10 pt-16"><section class="pt-20 pb-16 px-4 text-center relative z-10">
265  <div class="max-w-4xl mx-auto">
266    <div class="badge mb-6">
267      <i data-lucide="clock" class="w-4 h-4"></i>
268      Changelog
269    </div>
270    <h1 class="text-4xl md:text-5xl font-black tracking-tight">
271      <span class="gradient-text">Stay Up to Date</span> with Data Scraper Updates
272    </h1>
273  </div>
274</section>
275
276<section class="py-8 px-4 relative z-10">
277  <div class="max-w-2xl mx-auto relative">
278    <!-- Timeline line -->
279    <div
280      class="absolute left-4 top-0 bottom-0 w-px opacity-30"
281      style="background: linear-gradient(to bottom, #7c3aed, #d946ef, #06b6d4)"
282    ></div>
283
284    <div class="space-y-8">
285      <div class="relative pl-12">
286        <div
287          class="absolute left-2.5 top-1.5 w-3 h-3 rounded-full ring-4 ring-white"
288          style="background: linear-gradient(to right, #7c3aed, #d946ef)"
289        ></div>
290        <div class="glass-card-sm p-6 hover:border-violet-300/70 transition-all duration-300">
291          <h3 class="text-lg font-bold text-slate-900 mb-2">Smarter list detection powered by ML</h3>
292          <p class="text-slate-600 text-sm leading-relaxed">
293            We've upgraded the underlying model that identifies collectible lists on a page. Instead of relying on fixed
294            rules, it's now trained on hundreds of real-world sites, resulting in fewer missed lists and more consistent
295            detection on complex or unusual page layouts.
296          </p>
297        </div>
298      </div>
299
300      <div class="relative pl-12">
301        <div
302          class="absolute left-2.5 top-1.5 w-3 h-3 rounded-full ring-4 ring-white"
303          style="background: linear-gradient(to right, #7c3aed, #d946ef)"
304        ></div>
305        <div class="glass-card-sm p-6 hover:border-violet-300/70 transition-all duration-300">
306          <h3 class="text-lg font-bold text-slate-900 mb-2">Pagination fix</h3>
307          <p class="text-slate-600 text-sm leading-relaxed">
308            Fixed an issue where links opening in a new tab were incorrectly treated as pagination controls, causing
309            incomplete data collection on some sites.
310          </p>
311        </div>
312      </div>
313
314      <div class="relative pl-12">
315        <div
316          class="absolute left-2.5 top-1.5 w-3 h-3 rounded-full ring-4 ring-white"
317          style="background: linear-gradient(to right, #7c3aed, #d946ef)"
318        ></div>
319        <div class="glass-card-sm p-6 hover:border-violet-300/70 transition-all duration-300">
320          <h3 class="text-lg font-bold text-slate-900 mb-2">Results panel fix</h3>
321          <p class="text-slate-600 text-sm leading-relaxed">
322            Fixed a bug causing column headers to appear duplicated in the results table.
323          </p>
324        </div>
325      </div>
326    </div>
327  </div>
328</section>
329
330<section class="py-20 px-4 text-center relative z-10">
331  <div class="max-w-3xl mx-auto">
332    <h2 class="text-3xl md:text-4xl font-black tracking-tight text-center mb-4">
333      <span class="gradient-text">Ready to Start Scraping?</span>
334    </h2>
335    <p class="text-slate-600 text-lg mb-8 max-w-xl mx-auto">
336      Install Data Scraper and start collecting web data in seconds. No coding required.
337    </p>
338    <a
339      href="https://chromewebstore.google.com/detail/nkkdeadncmkfpmoafagdoanfkipoogkl"
340      target="_blank"
341      rel="noopener noreferrer"
342      class="btn-primary text-lg"
343    >
344      <i data-lucide="chrome" class="w-5 h-5"></i>
345      Install the Extension
346    </a>
347  </div>
348</section>
349
350</main>
351    <footer class="border-t border-violet-200/50 bg-white/50 backdrop-blur-sm relative z-10">
352  <div class="max-w-6xl mx-auto px-4 py-12">
353    <div class="grid grid-cols-2 md:grid-cols-5 gap-8">
354      <!-- About column -->
355      <div class="col-span-2 md:col-span-1">
356        <a href="/" class="flex items-center gap-2 text-slate-900 font-bold text-lg mb-3 no-underline">
357          <svg
358  viewBox="0 0 96 96"
359  fill="none"
360  xmlns="http://www.w3.org/2000/svg"
361  class="w-5 h-5"
362  
363  aria-hidden="true"
364>
365  <path
366    d="M81.6699 57C81.9351 57 82.1894 57.1055 82.377 57.293C82.5645 57.4805 82.6699 57.7348 82.6699 58V72.71C82.6699 72.9752 82.7754 73.2295 82.9629 73.417C83.1504 73.6045 83.4047 73.71 83.6699 73.71H92C92.1866 73.7104 92.3691 73.7635 92.5273 73.8623C92.6856 73.9612 92.8133 74.1021 92.8955 74.2696C92.9776 74.437 93.0108 74.6241 92.9922 74.8096C92.9736 74.9953 92.9039 75.1725 92.79 75.3203L77.7998 95C77.7067 95.1241 77.586 95.2246 77.4473 95.294C77.3084 95.3634 77.1552 95.4004 77 95.4004C76.8448 95.4004 76.6916 95.3634 76.5527 95.294C76.414 95.2246 76.2933 95.1241 76.2002 95L61.2002 75.3604C61.0736 75.2127 60.9928 75.0309 60.9678 74.8379C60.9428 74.6448 60.9746 74.4477 61.0596 74.2725C61.1444 74.0976 61.2786 73.9515 61.4453 73.8516C61.6124 73.7516 61.8054 73.7021 62 73.71H70.3096C70.5748 73.71 70.83 73.6046 71.0176 73.417C71.2049 73.2295 71.3096 72.9751 71.3096 72.71L71.3301 58C71.3301 57.7348 71.4355 57.4805 71.623 57.293C71.8106 57.1055 72.0649 57 72.3301 57H81.6699ZM88.25 3.6929e-05C90.32 0.0921918 92.2825 0.947476 93.7598 2.40043C95.1837 3.81383 95.9895 5.734 96 7.74027V45.5H95.999V66.7998C95.9913 67.1766 95.9076 67.548 95.7529 67.8916C95.5983 68.2352 95.3763 68.5443 95.0996 68.7998C94.5114 69.3466 93.7376 69.6503 92.9346 69.6504C92.1314 69.6504 91.3578 69.3466 90.7695 68.7998C90.494 68.5431 90.2717 68.2341 90.1172 67.8907C89.9627 67.5473 89.8785 67.1762 89.8691 66.7998V45.5H66.3799V64C66.374 64.3761 66.2925 64.7472 66.1396 65.0909C65.9867 65.4345 65.7657 65.7439 65.4902 66C64.9441 66.5094 64.2359 66.8099 63.4902 66.8496H36.251V85.1905H48.3496C49.1515 85.1885 49.9242 85.4922 50.5098 86.0401C50.793 86.3022 51.0193 86.62 51.1738 86.9737C51.3283 87.3272 51.4082 87.7089 51.4082 88.0948C51.4082 88.4807 51.3284 88.8632 51.1738 89.2168C51.0193 89.5703 50.7929 89.8884 50.5098 90.1504C49.9243 90.6982 49.1514 91.002 48.3496 91H11.2305C8.28244 91.0124 5.44102 89.8959 3.29004 87.8799C2.2571 86.9155 1.43199 85.7501 0.866211 84.4551C0.300472 83.1602 0.0058257 81.7627 0 80.3496V7.74027C0.00507362 6.71392 0.219952 5.69935 0.630859 4.75883C1.04175 3.81843 1.64013 2.97154 2.38965 2.27054C3.95726 0.805991 6.02463 -0.00631119 8.16992 3.6929e-05H88.25ZM6.12988 80.3496C6.13342 80.9908 6.26737 81.6251 6.52344 82.2129C6.77958 82.8009 7.15289 83.3313 7.62012 83.7705C8.598 84.6872 9.89011 85.1954 11.2305 85.1905H30.1309V66.8496H6.12988V80.3496ZM6.12988 61H30.1309V45.5H6.12988V61ZM36.251 61H60.2598V45.5H36.251V61ZM6.12988 39.7002H30.1309V24.2002H6.12988V39.7002ZM36.251 39.7002H60.2598V24.2002H36.251V39.7002ZM66.3799 39.7002H89.8691V27.1104H89.8701V24.2002H66.3799V39.7002ZM8.12988 5.82035C7.59425 5.81585 7.07794 6.0199 6.69043 6.38969C6.50133 6.56218 6.34941 6.7727 6.24609 7.00687C6.14285 7.24097 6.08977 7.49418 6.08984 7.75004V18.3897H89.8701V7.74027C89.8702 7.48447 89.8171 7.23117 89.7139 6.99711C89.6106 6.76293 89.4586 6.55241 89.2695 6.37992C88.882 6.01006 88.3658 5.8051 87.8301 5.80961L8.12988 5.82035Z"
367    fill="url(#ext-icon-grad)"
368  />
369  <defs>
370    <linearGradient id="ext-icon-grad" x1="15.5" y1="12" x2="92.4651" y2="65.8409" gradientUnits="userSpaceOnUse">
371      <stop stop-color="#38BDF8" />
372      <stop offset="1" stop-color="#A78BFA" />
373    </linearGradient>
374  </defs>
375</svg>
376 Data Scraper
377        </a>
378        <p class="text-slate-500 text-sm leading-relaxed">
379          Extract structured data from websites quickly and easily, turning web content into usable datasets without
380          coding.
381        </p>
382      </div>
383
384      <!-- Overview -->
385      <div>
386        <h4 class="text-slate-900 font-semibold text-sm mb-3">Overview</h4>
387        <ul class="space-y-2 list-none p-0 m-0">
388          <li>
389            <a href="/" class="text-slate-500 hover:text-slate-700 transition-colors text-sm no-underline">Home</a>
390          </li>
391          <li>
392            <a href="/changelog/" class="text-slate-500 hover:text-slate-700 transition-colors text-sm no-underline"
393              >What's New</a
394            >
395          </li>
396          <li>
397            <a href="/roadmap/" class="text-slate-500 hover:text-slate-700 transition-colors text-sm no-underline"
398              >Roadmap</a
399            >
400          </li>
401          <li>
402            <a href="/pricing/" class="text-slate-500 hover:text-slate-700 transition-colors text-sm no-underline"
403              >Pricing</a
404            >
405          </li>
406        </ul>
407      </div>
408
409      <!-- Sources -->
410      <div>
411        <h4 class="text-slate-900 font-semibold text-sm mb-3">Sources</h4>
412        <ul class="space-y-2 list-none p-0 m-0">
413          <li>
414            <a href="/images/" class="text-slate-500 hover:text-slate-700 transition-colors text-sm no-underline"
415              >Image URLs</a
416            >
417          </li>
418        </ul>
419      </div>
420
421      <!-- Export Formats -->
422      <div>
423        <h4 class="text-slate-900 font-semibold text-sm mb-3">Export Formats</h4>
424        <ul class="space-y-2 list-none p-0 m-0">
425          <li>
426            <a href="/excel/" class="text-slate-500 hover:text-slate-700 transition-colors text-sm no-underline"
427              >Excel</a
428            >
429          </li>
430          <li>
431            <a href="/gsheets/" class="text-slate-500 hover:text-slate-700 transition-colors text-sm no-underline"
432              >Google Sheets</a
433            >
434          </li>
435          <li>
436            <a href="/csv/" class="text-slate-500 hover:text-slate-700 transition-colors text-sm no-underline">CSV</a>
437          </li>
438        </ul>
439      </div>
440
441      <!-- Utility -->
442      <div>
443        <h4 class="text-slate-900 font-semibold text-sm mb-3">Utility</h4>
444        <ul class="space-y-2 list-none p-0 m-0">
445          <li>
446            <a
447              href="/privacy-policy/"
448              class="text-slate-500 hover:text-slate-700 transition-colors text-sm no-underline"
449              >Privacy Policy</a
450            >
451          </li>
452          <li>
453            <a
454              href="/terms-of-service/"
455              class="text-slate-500 hover:text-slate-700 transition-colors text-sm no-underline"
456              >Terms of Service</a
457            >
458          </li>
459          <li>
460            <a
461              href="/acceptable-use/"
462              class="text-slate-500 hover:text-slate-700 transition-colors text-sm no-underline"
463              >Acceptable Use</a
464            >
465          </li>
466          <li>
467            <a href="/refund-policy/" class="text-slate-500 hover:text-slate-700 transition-colors text-sm no-underline"
468              >Refund Policy</a
469            >
470          </li>
471          <li>
472            <a
473              href="/payment-partners/"
474              class="text-slate-500 hover:text-slate-700 transition-colors text-sm no-underline"
475              >Payment Partners</a
476            >
477          </li>
478          <li>
479            <a href="/licenses/" class="text-slate-500 hover:text-slate-700 transition-colors text-sm no-underline"
480              >Licenses</a
481            >
482          </li>
483        </ul>
484      </div>
485    </div>
486
487    <div class="mt-10 pt-6 border-t border-violet-200/50 text-center text-slate-400 text-sm space-y-2">
488      <p>
489        Data Scraper is developed and operated by Functionsoft LLC in cooperation with its Bulgarian commercial partner
490        FRESHCODE LTD, UIC 205729768, VAT No. BG205729768, registered office at 8 Tsar Kaloyan Street, floor 3, office
491        2, Sredets District, Sofia 1000, Bulgaria. Purchases may be sold and processed by Paddle, FastSpring or another
492        authorised Merchant of Record. The Merchant of Record applicable to your purchase will be identified at checkout
493        and in your receipt. Contact:
494        <a href="mailto:[email protected]" class="hover:text-slate-600 transition-colors">[email protected]</a
495        >.
496      </p>
497      <p>
498        &copy; <span id="footer-year"></span> Functionsoft LLC in cooperation with FRESHCODE LTD.
499        <a href="/terms-of-service/" class="hover:text-slate-600 transition-colors">Terms of Service</a> ·
500        <a href="/privacy-policy/" class="hover:text-slate-600 transition-colors">Privacy Policy</a> ·
501        <a href="/refund-policy/" class="hover:text-slate-600 transition-colors">Refund Policy</a> ·
502        <a href="mailto:[email protected]" class="hover:text-slate-600 transition-colors"
503          >[email protected]</a
504        >
505      </p>
506    </div>
507  </div>
508</footer>
509<script>
510  document.getElementById("footer-year").textContent = new Date().getFullYear()
511</script>
511
512
513
514    
514<script defer src="https://unpkg.com/[email protected]/dist/umd/lucide.min.js" onload="lucide.createIcons()"></script>
514
515  </body>
516</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.