TPB sex study

De Design numérique
Révision datée du 6 mai 2022 à 10:48 par Theophilegm (discussion | contributions) (Techniques et Outils)
Aller à : navigation, rechercher

Projet

Il se passe des choses intéréssentes sur Internet. Cet espace virtuel ou les humains dialoguent, échangent, partagent une multitude d'informations à propos d'un spectre de sujets tellement important qu'il y a un certains nombre de règles nommé "Règles d'internets" qui dictent notamment que Tout choses, dans le monde physique et le monde virtuel à un équivalent erotisé et/ou pornographique.

The Pirate Bay est un site web ( et plusieurs sites proxy) permettant de partager via [ Bittorrent] des contenues, souvant illégaux, comme des films, des série télévisé, des logiciels, et même des livres numériques et des pdfs. Les sites est divisé en rubriques, par exemples les contenues les plus télécharger de tout les temps.

Or, dans la section top 100 ebook, il semble y avoir un pourcentage des documents proposés soit systèmatiquement relatif au thématique du Sex et des relations sexuelles. Allant de contenue explicitement pornographique (pdf de la revue Playboy) à des livres de conseils de drague et même de plus en plus des livres qui pourraient être considéré comme politique (culture queer, féminisme).

À travers le web scraping du top 100de la section ebook dans The Pirate Bay et le recroisement de ces données dans la durée, je compte observer la place du thème de la sexualité, pour voir l'évolution au cours du temps des contenues les plus téléchargé dans le top 100 ainsi que les thématique plus précise proposé.

Les donnée sont récupérer directement du site via web scraping et sont encodé directement dans une base de donnée mariadb. Ensuite, plusieurs routine SQL vont généré des statistiques relative à chaque document, notamment en grâce à des mots-clés et les nombre de Seeder et Leecher.

La visualisation de ces données prend la forme de soit un flux RSS qui contiendrait un résumé des dernières donnée et des statistiques au cours du temps, soit une publication générative d'un epub contenant des information sous la forme d'un almanach, une sorte de revue.

Un projet future pourrait prendre en compte toute les sections top 100 de TPB, mais aussi recoupé avec les dernier ajouts les plus populaire, accèssible à l'addresse {proxy}/top/48h600.

Bittorrent

Le partage des médias sur les réseaux torrents utilisent le protocole Bittorrent.

Bittorrent fonctionne en connection pair à pair , le contenue étant distribué à travers plusieurs utilisateur qui ont un contenue (Seeder) vers les utilisateurs qui télécharge ce contenue (Leecher). Chaque Leecher a un client bittorrent qui va d'abord se charger de se connecter et récupérer des bribes de donnée auprès de chaque Seeder connecté au réseaux crée autour du contenue. Des que le Leecher à le contenue (même partiel), le client bittorrent va envoyer des données à d'autres Leechers, devenant Seeder à son tour.

Ce système permet de distribué sur le réseaux de partage les contenue et les capacité de partage. Bittorrent est donc plus résilient qu'un server conventionel qui proposerait le contenue, car il existe plusieurs copie du contenue, à travers le monde parfois.

Cependant, il faut des Seeder pour pouvoir télécharger un contenue. Il existe des système de ratio téléchargement/partage, pour forcer les Seeder à continuer à partager le contenue. The Pirate Bay n'utilise pas un système de ratio. Les Seeder restent connectée par simple bonne volonté de partage.

De plus, ce réseaux n'est par réellement décentralisé ou distribué car les liens vers les contenues sont référencé principalement sur le site web.

Techniques et Outils

Le projet complet se trouve dans ce repo Codeberg. Le README.md contient les informations d'installation. !! Attention, il est préférable de travailler depuis Linux. Bon courage si vous est sur un autre OS.

Le diagram des entitées relationelles est créer grâce à yEd graph editor.

L'idée principale est de lancer périodiquement le web scraper. À chaque lancement, il scrape le contenue de la page Top 100 ebooks, qui se trouve à cette adresse : {url du proxy ThePirateBay}/601/top

Il encode tout d'abord la table load_data, qui contient les information du scraping. En même temps, il remplit la table load_entry avec chaque document du top 100, avec la clé de load_data pour identifier ces nouvelles données au scraping qui les a récuperer.

(À venir) Ensuite une série de routine SQL se chargerait de de généré les statistiques, et les mot clé/ catégories, serait soit entré à la mains suite un référencement manuel entré dans la DB, soit à travers du traitement syntaxique, avec Pytorch, une library python de machine learning.


Diagramme relationnelle


Le projet utilise le framework Python de webcrawling Scrapy et MariaDB comme base de donnée relationnelle.

Les table sont créer via PHPMyAdmin au préalable. Dans le repo Codeberg ce trouve un export de la structure de la base de donnée. Il suffit de l'importer avec PHPMyAdmin pour montrer

Secondaire mais important, la mise en place de proxy vers tor avec Docker, Docker-compose comme contenaire, des scripts divers et Scrapy pour acceder à The Pirate Bay en échapant au bloquage DNS(Dynamique Name System) par les ISP(Internet Service Providers), le site permettant le téléchargement de contenue proteger par le droit d'auteur et le copyright et donc illégale.

La configuration est expliper ici: