Рубрики
Без рубрики

Джордан использует SCRAPERAPI

Раскрытие: Я получаю партнерскую комиссию для всех, кто платит за скребок … Tagged WebScraping, JavaScript, ScraperApi, Teamscript.

Раскрытие информации: Я получаю партнерскую комиссию для всех, кто платит за Scraper API, используя ссылку, которую я предоставляю здесь. Использование этого промо-кода также дает 10% скидку – SCRAPE187707

Когда я впервые начал Web Scropping, я помню, что ожидая, что будет много сложности доступа к большому количеству в мире интернета. Я помню, как клиент просит меня сосать результаты Google и когда я увидел, что это против их условий обслуживания, я предполагал, что они приведут решительные меры в предотвращении его. Я ожидал, что эти резкие меры будут полностью, как блокировать мой IP-адрес полностью. Я специально помню, как думаете, как бы мой телефон Android работать, если мой IP был полностью заблокирован из услуг Google.

Затем, когда я попал в соскобца Amazon, я ожидал что-то подобное. Я помню, даже упомянув в пост Разговаривая с моей женой, в основном в шутку, о том, как это будет полностью запрещено от услуг Amazon.

Реальность

Реальность такова, никто не хочет заблокировать вас. Вы их клиент. Это грязный и плохой бизнес, чтобы начать блокировать своих клиентов. Они сначала используют много других методов, таких как recaptchas и Timing Out запросы.

Иногда эти вещи могут остановить вас от достижения нужных данных данных. Google довольно усердно делать эти вещи И поэтому я пошел и намеренно вызвал их ограничение скорости. Увидеть ниже.

429 Статус означает слишком много запросов.

Скребок API.

Вот где Скребок API приходит в игру. Скребок API – действительно, действительно аккуратный инструмент, который обрабатывает все прокси и даже капчи для вас. Это невероятно легко в использовании. Все, что вы делаете, это используйте ключ API и URL-адрес, которые они предоставляют и передают его URL-адрес, который вы хотите посетить. Тогда это делает остальные. Я использовал запросы ниже, сразу после вышеупомянутых, где я получил 429-е годы. Вы можете увидеть, что почти все ответы были 200S после факта.

Это намного лучше

Тест скорости

Разве это не аккуратный гиф?

В любое время, когда вы работаете с прокси, у вас есть скорость попадания, и работа со скребком API не было исключением. Вот некоторые результаты с API скребком и без бездействия:

Без скребка API

С скребком API

Google без скребка API

Google со скребком API

Как вы можете видеть, при ударе этого веб-сайта его примерно в четыре раза больше, чем обычно с помощью скребка API. Google был намного хуже. Я думаю, что это в основном, потому что API скребка вращает прокси в течение примерно 60 секунд. Итак, если это вообще снимает проблему, он начнет вращать прокси до успеха. Это означает, что для этих ошибок потребовалось полное 60 секунд. Отель Хорошая новость в том, что API скребка не счета за какую-либо неудачную попытку.

Использование API скребка на практике

Из-за значительного удара скорости я должен рекомендовать использовать Scraper API-вторым после обычных методов. Вот пример того, как я думаю, хороший код может работать с Scraper API:

const terms = [
    'pizza',
    'sword',
    'javascript web scraping guy',
    'burrito',
    'chocolate',
    'donuts',
    'why am I hungry',
    'when is breakfast'
];

// Scraper Api limits how many concurrent requests we have at once
const agent = new Agent({
    maxSockets: 25
});

scrape('pizza', agent);

function scrape(term: string, agent: Agent) {
    const url = `https://google.com/search?q=${term}`;
    const scraperApiUrl = `http://api.scraperapi.com?api_key=${process.env.apiKey}&url=`

    axios.get(url).then((response) => {
        const html = response.data.content ? response.data.content : response.data;
        const $ = cheerio.load(html);
        const title = $('title').text();
        console.log('Success: ', response ? response.status : 'no status', title);
    }, (error) => {
        if (error.response) {
            console.log(' Error getting response', term, error.response ? error.response.status : 'no response');
            if (error.response && error.response.status === 404) {
                return `404 for ${url}`;
            }
        }
        else if (error.request) {
            console.log(' Error getting request', term, error.request.message);
        }
        else {
            console.log(' Some other error', error.message);
        }

        // Use Scraper Api with maxSockets
        axios({
            url: scraperApiUrl + url,
            method: 'GET',
            httpAgent: agent,
            httpsAgent: agent
        }).then((response) => {
            const html = response.data.content ? response.data.content : response.data;
            const $ = cheerio.load(html);
            const title = $('title').text();
            console.log('Success: ', response ? response.status : 'no status', title);
        }, (error) => {
            console.log(`Failed getting ${url} with Scraper Api`, error);
        });
    });

}

Основная вынос здесь, если произойдет ошибка, мы проверяем, если это 404. 404 – это больше преднамеренной ошибки и означает, что страница фактически не существует. Нам не нужно для этого API скребка.

Если это не 404, мы затем перейдем, чтобы попробовать запрос снова со скребкой API. Скребок API ограничивает, сколько одновременных запросов вам разрешено идти одновременно . Вот где приходит агент. Наверху вы можете увидеть, что я создаю Новый агент с ограниченным количеством Maxsockets Отказ Node.js Документация утверждает, что это «определяет, сколько одновременных сокетов агент может открывать на происхождение. «Таким образом, вы можете управлять своими параллельными запросами здесь и предотвратить любые проблемы от API скреблов с одновременными запросами.

Конец

Итак, там у вас есть. Скребок API. Это мощный, чрезвычайно прост в использовании инструмент в вашем ящике Scraping Tool. Используйте этот промо-код для скидки на 10% – Scrape187707. У них также есть 1000 бесплатных вызовов API!

Ищете бизнес-ливок?

Использование техники говорилось здесь в JavascriptWebscrapingguy.com Мы смогли запустить способ доступа к удивительному бизнесу. Узнать больше в Cobalt Intelligence Действительно

Оригинал: “https://dev.to/aarmora/jordan-uses-scraperapi-4gnn”