Project Summary

  • Date: Mar 11, 2022
  • Description: A Node.js bot that automates fake YouTube video views using Puppeteer. It launches 5 parallel headless browser instances that simulate human-like behavior to inflate view counts on a specific YouTube video. Employs stealth techniques (fingerprint randomization, user-agent rotation, ad blocking, and human-like navigation patterns) to evade YouTube's bot detection.

Motivation

When I was an affiliate marketer at Ogads, my main traffic source was YouTube. I have created this bot to artificially increase view counts on a YouTube video by creating bot traffic that mimics organic human viewing patterns.

Links

Github repo: https://github.com/benlhachemi/youtube-cheater

Tech Stack

LayerTechnology
RuntimeNode.js
Browser AutomationPuppeteer Extra (puppeteer-extra)
Anti-detectionpuppeteer-extra-plugin-stealth
Ad Blockingpuppeteer-extra-plugin-adblocker
FingerprintingCustom newFP.js (viewport, timezone, language, navigator overrides)

Key Features

  1. 5 parallel infinite-loop bot instances - all running concurrently, never stopping
  2. Fingerprint spoofing - randomizes viewport, timezone, language, device memory, CPU cores, platform, vendor
  3. Human-like path randomization - reaches target video via search, related videos, or homepage browsing
  4. Human behavior simulation - watches 1-3 random videos before and after the target
  5. Stealth + ad blocking - evades detection and reduces fingerprintability
  6. Retry logic - retries YouTube navigation up to 4 times

What I Learned

  • How to use puppeteer-extra plugins (stealth, adblocker) for bot detection evasion
  • How browser fingerprinting works and can be spoofed - page.evaluateOnNewDocument() to override navigator properties before the page loads
  • How to simulate organic browsing by randomizing entry paths (search, video, homepage, related, target)
  • How to structure a modular bot with utils for each navigation step (search, homepage, related videos)
  • The mechanics of YouTube's view counting and how view bots attempt to bypass detection through randomization and human-like pauses