🦄 Sales Unicorns: Global B2B Sales
@salesunicorns1.4K подп.
1.9Kпросмотров
14 июля 2025 г.
🎬 ВидеоScore: 2.0K
⚡️ Парсим имейлы без ГПТ, регистрации и смс Часто самые живые имейлы лежат не в аполо (храни господь его душу), не в зуминфоцыгане и даже не в Clay. Чаще они просто лежат в футере страницы или на /contact page. Вот способ, как вынуть их оттуда без захода на страницу и ручной копипасты, а также без лживого ИИ и дорогих скраперов: 1. Ставим в Google Sheets скрипт для вытягивания HTML: const SHEETS_CELL_LIMIT = 50000; function onOpen() { SpreadsheetApp .getUi() .createMenu("Scrape") .addItem("Scrape URLs in column A", "ScrapeAB") .addToUi() } function SCRAPE(url) { const res = UrlFetchApp.fetch(url); if (res.getResponseCode() >= 300) { return Error: response code &#036;{res.getResponseCode()}; } const html = res.getContentText(); const text = cleanup_html(html); // html.substring(0,SHEETS_CELL_LIMIT), return text.substring(0,SHEETS_CELL_LIMIT); } function cleanup_html(html) { const tag_free = html .replace(/<style([&#092;s&#092;S]?)<&#092;/style>/gi, "") .replace(/<script([&#092;s&#092;S]?)<&#092;/script>/gi, "") .replace(/<[^>]+>/g, ""); let decoded = tag_free; try { const xml = XmlService.parse('<d>' + tag_free + '</d>'); decoded = xml.getRootElement().getText(); } catch (e) {} const clean = decoded .replace(/&#092;n&#092;s*&#092;n/gi, "&#092;n") .replace(/&nbsp;/gi, " ") .trim(); return clean; } function ScrapeAB() { const range = SpreadsheetApp.getActiveSpreadsheet().getRange("A:B"); const values = range.getValues().slice(1) let urls = 0 let done = 0 for (const row of values) { const url = row[0]; const res = row[1]; if (!url) continue; urls++; if (!res) continue; done++; } if (urls === done) { SpreadsheetApp.getUi().alert(Found &#036;{urls} urls, &#036;{done} already scraped. Nothing to be done.) return; } SpreadsheetApp.getUi().alert(Found &#036;{urls} urls, &#036;{done} already scraped. Scraping &#036;{urls - done}...) for (let irow = 0; irow < values.length; irow++) { row = values[irow]; const url = row[0]; const res = row[1]; if (!url || res) continue; const text = GPT_SCRAPE(url) range.getCell(irow+2, 2).setValue(text); } } И вызываем его функцией =scrape(A1), где A1 это адрес сайта. 2. Дальше используем магию регулярных выражений: =REGEXEXTRACT(B2, "[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+&#092;.[a-zA-Z]{2,}") Где B2 = контент сайта, который вынули ранее. 3. ??? 4. Получаем бесплатный company email. → Незаменимая механика для тех, кто работает с local biz, инвесторскими компаниями, и прочими ИсИпИ, где main company email, это единственный адекватный канал связи. Этот time saver - один их многих лайфхаков из курса по Clay и его бесплатной альтернативе, доступного в предзаписи всем, кто не залетел в живую группу в июне. [ вот тут ] @salesunicorns
1.9K
просмотров
3003
символов
Нет
эмодзи
Да
медиа

Другие посты @salesunicorns

Все посты канала →
⚡️ Парсим имейлы без ГПТ, регистрации и смс Часто самые живы — @salesunicorns | PostSniper