Two-phase workflow: check your list against what's already saved (no API), then execute the import with live progress and error details.
Search & import
Find a restaurant on Yelp and import it in one click.
Step 1 — Auto-scroll the Yelp page:
(async () => {
let prev = 0, unchanged = 0;
while (unchanged < 3) {
window.scrollTo(0, 9999999);
document.documentElement.scrollTop = 9999999;
document.body.scrollTop = 9999999;
await new Promise(r => setTimeout(r, 3000));
const curr = [...document.querySelectorAll('a[href*="/biz/"]')]
.map(a => a.href.split('?')[0])
.filter((v,i,a) => a.indexOf(v) === i).length;
if (curr === prev) unchanged++;
else { unchanged = 0; prev = curr; }
console.log('Loaded ' + curr + ' so far…');
}
alert('Done! ' + prev + ' found. Now run Step 2.');
})();Step 2 — Copy all URLs:
const links = [...document.querySelectorAll('a[href*="/biz/"]')]
.map(a => { try { return decodeURIComponent(a.href.split('?')[0]) } catch { return a.href.split('?')[0] } })
.filter((v,i,a) => a.indexOf(v)===i)
.filter(u => /yelp\.com\/biz\/[^/?#\s]+/.test(u));
copy(links.join('\n'));
alert(links.length + ' URLs copied!');Shows every business, what's stored in your collection vs. what the Yelp cache last returned, and how fresh the cache is. Mismatches may indicate a stale check or a bug.
Reconcile your collection against Yelp: check for missing entries or fetch updated business data.
Paste Yelp business URLs to see what's missing from your collection.
Manage API credentials and monitor usage for connected services.
A breakdown of your saved places.