Recherche sur YouTube, interroge les vidéos recommandées et les regarde. Le tout entièrement automatisé et anonymisé via le réseau Tor. Le projet se compose de deux composants utilisables indépendamment, l'automatisation YouTube écrite en Python et le navigateur Tor dockerisé.
Ce projet est uniquement à des fins éducatives. Utiliser Tor pour regarder des vidéos YouTube est fortement déconseillé, notamment à des fins de Botting. Veuillez vous informer sur le réseau Tor avant de l'utiliser de manière intensive.
Ce projet nécessite que Poetry installe les dépendances requises. Consultez ce lien pour installer Poetry sur votre système d’exploitation.
Assurez-vous d'avoir installé Python 3.8 ! Sinon, l'étape 3 vous indiquera qu'aucune version Python compatible n'est installée.
Cloner/Télécharger ce référentiel
Accédez à la racine du référentiel
Exécutez poetry install
pour créer un environnement virtuel avec Poetry
Soit exécutez le navigateur dockerisé avec docker-compose up
, installez geckodriver pour un Firefox local ou ChromeDriver pour Chromium. Assurez-vous que geckodriver/ChromeDriver se trouvent à un emplacement de votre $PATH
.
Exécutez poetry run python main.py
pour exécuter le programme. Vous pouvez également exécuter poetry shell
suivi de python main.py
. Par défaut, cela se connecte au navigateur dockerisé. Pour automatiser un autre navigateur, utilisez l'option de ligne de commande --browser [chrome/firefox]
.
L’exécution du conteneur nécessite Docker et docker-compose.
Cloner/Télécharger ce référentiel
Accédez à la racine du référentiel
Exécutez docker-compose up
. L'image sera construite automatiquement avant le démarrage.
Selenium peut désormais se connecter au navigateur via le port 4444. En Python, la connexion peut être établie avec la commande suivante.
driver = webdriver.Remote(command_executor="http://127.0.0.1:4444/wd/hub",desired_capabilities=options, )
Voir main.py
pour plus d'informations.
Tous ces paramètres sont facultatifs et une valeur par défaut sera utilisée s'ils ne sont pas définis. Vous pouvez également obtenir ces définitions en exécutant main.py --help
usage: main.py [-h] [-B {docker,chrome,firefox}] [-t] [--disable-tor] -s SEARCH_TERMS [-c CHANNEL_URL] optional arguments: -h, --help show this help message and exit -B {docker,chrome,firefox}, --browser {docker,chrome,firefox} Select the driver/browser to use for executing the script. -t, --enable-tor Enables Tor usage by connecting to a proxy on localhost:9050. Only usable with the docker executor. --disable-tor Disables the Tor proxy. -s SEARCH_TERMS, --search-terms SEARCH_TERMS This argument declares a list of search terms which get viewed. -c CHANNEL_URL, --channel-url CHANNEL_URL Channel URL if not declared it uses Golden Gorillas channel URL as default.