/token_scraper

Утилита для автоматического сбора токенов с сайта dexscreener, обходящая защиту Cloudflare, и временно сохраняющая их в Redis.

Primary LanguageJavaScript


Token Scraper

Утилита для автоматического сбора токенов с сайта dexscreener, обходящая защиту Cloudflare, и временно сохраняющая их в Redis.


📖 Описание

Token Scraper разработан для автоматического сбора токенов с первой страницы веб-сайта. Он использует браузер для обхода защитных механизмов, таких как Cloudflare, и сохраняет собранные данные в Redis для временного хранения. Браузер работает в бесконечном цикле с указанным интервалом перезапуска, обеспечивая непрерывную работу скрапера.

🛠 Технологии

  • Node.js
  • Puppeteer
  • Redis
  • Axios
  • Chromium (через @sparticuz/chromium)
  • Xvfb

🚀 Установка

  1. Клонируйте репозиторий:

    git clone https://github.com/p-force/token_scraper.git
  2. Установите зависимости:

    npm install
  3. Создайте файл .env на основе файла env_example и заполните файл .env своими данными для подключения к базе данных Redis:

    cp env_example .env

▶️ Использование

  1. Собрать ссылки, которые содержат в себе информацию о фильтрах и выбранном вами блокчейне.

  2. Добавьте ссылки в файл links.json. Запись в формате "имя_токена": "ссылка".
    Важно: имя токена из этого файла будет совпадать с ключом для поиска в базе данных. Пример:

    {
      "solanaTrending": "https://dexscreener.com/solana/5m?rankBy=trendingScoreM5&order=desc",
      "baseTrending": "https://dexscreener.com/base/5m?rankBy=trendingScoreM5&order=desc",
      "baseTop": "https://dexscreener.com/base/5m?rankBy=volume&order=desc&minLiq=25000&min24HTxns=50",
      "solanaTop": "https://dexscreener.com/solana/5m?rankBy=volume&order=desc&minLiq=25000&min24HTxns=50"
    }
  3. Необходимо создать файл .env и скопировать туда содержимое файла env_example

    cp env_example .env
  4. Заполните поля для подключения к вашей базе Redis

    REDIS_HOST=
    REDIS_PORT=
    REDIS_PWD=
    REDIS_USER=
    
    REDIS_URL=redis://REDIS_USER:REDIS_PWD@REDIS_HOST:REDIS_PORT
  5. Запустив код, вы сможете получить адрес токена, который находится в указанной позиции на странице(картинка ниже). Перейдя по ссылке из колонки TOKEN, справа будет 3 адреса токенов этого блокчейна. Программа будет собирать средний токен.
    При необходимости, вы можете поменять номер токена, чтобы получить любой из трёх доступных (где 0 — номер первого токена).

  6. Важно: Не рекомендуется использовать VPN при работе с проектом, так как это может привести к блокировке IP-адреса или нарушению работы скрапера.