Утилита для автоматического сбора токенов с сайта dexscreener, обходящая защиту Cloudflare, и временно сохраняющая их в Redis.
Token Scraper разработан для автоматического сбора токенов с первой страницы веб-сайта. Он использует браузер для обхода защитных механизмов, таких как Cloudflare, и сохраняет собранные данные в Redis для временного хранения. Браузер работает в бесконечном цикле с указанным интервалом перезапуска, обеспечивая непрерывную работу скрапера.
- Node.js
- Puppeteer
- Redis
- Axios
- Chromium (через @sparticuz/chromium)
- Xvfb
-
Клонируйте репозиторий:
git clone https://github.com/p-force/token_scraper.git
-
Установите зависимости:
npm install
-
Создайте файл .env на основе файла env_example и заполните файл .env своими данными для подключения к базе данных Redis:
cp env_example .env
-
Собрать ссылки, которые содержат в себе информацию о фильтрах и выбранном вами блокчейне.
- Фильтры и Блокчейны располагаются на главной странице
- Фильтры и Блокчейны располагаются на главной странице
-
Добавьте ссылки в файл 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" }
-
Необходимо создать файл .env и скопировать туда содержимое файла env_example
cp env_example .env
-
Заполните поля для подключения к вашей базе Redis
REDIS_HOST= REDIS_PORT= REDIS_PWD= REDIS_USER= REDIS_URL=redis://REDIS_USER:REDIS_PWD@REDIS_HOST:REDIS_PORT
-
Запустив код, вы сможете получить адрес токена, который находится в указанной позиции на странице(картинка ниже). Перейдя по ссылке из колонки TOKEN, справа будет 3 адреса токенов этого блокчейна. Программа будет собирать средний токен.
При необходимости, вы можете поменять номер токена, чтобы получить любой из трёх доступных (где 0 — номер первого токена).
-
Важно: Не рекомендуется использовать VPN при работе с проектом, так как это может привести к блокировке IP-адреса или нарушению работы скрапера.