Archives par mot-clé : captcha

Téléchargement Direct et Linux (Tucan)

Plop à vous cher visiteur …

Aujourd’hui, petit article pour relancer mon blog … (après un mois et demi d’absence … ), je vais donc parler de direct download et plus précisement d’un logiciel permettant d’automatiser les téléchargements (liste de dl, cracking de captcha, …).

Avec l’arrivé d’Hadopi, il devient intéressant de changer ses habitudes en terme de téléchargement de contenus (légaux bien sûr ;)). Jusque là, j’utilisais JDownloader, qui faisait bien son travail, si ce n’est les ressources consommées par le logiciel (écrit en Java … pas besoin d’un dessin), il avait tout pour plaire :

  • Récupération direct du contenu d’un copié (et collage immédiat dans le logiciel)
  • Cracking de captcha (système maison efficace à 90% voir plus ou moins suivant les hosts)
  • Système de priorité
  • Reprise de téléchargement après extinction, …
  • Mise à jour fréquente

Cela dit, l’interface pouvait devenir très lourd, et l’utilisation sous linux semblait bizarre, déplacement de fenêtres saccadées, lenteur d’affichage (Java …).

Il me fallait donc trouver un soft open-source propre et léger comme seul de vrai libriste savent le faire ;). Au détour de la doc d’ubuntu (c’est le mal, mais bon), j’ai trouvé le soft Tucan, écrit en Python-GTK, pas trop moche et encore à ses débuts, toutes les fonctionnalités de JDownloader n’y sont pas, mais l’essentiel y est :

  • Récupération de liens depuis du code HTML, texte, …
  • Cracking de Captcha (utilisation de Tesseract), crackant même du ReCaptcha (le truc que même un humain doit retaper 3 fois avant de trouver le bon …)
  • Priorité basic
  • Utilisation de Plugins par host (module python à part, super simple à créer/modifier)
  • Code source en GPLv3

Le gros problème : il ne permet pas la reprise d’un téléchargement (genre on arrête le logiciel alors que des téléchargements sont en cours, il reprendra le fichier depuis le début).

Le système de timing est basic : ils utilisent tout le temps un timer de 60 secondes, sans tenir compte du temps fournit par l’host (45sec pour MU, 300 sec pour HF, …).

Par contre, comme c’est du python et open-source, on peut direct taper dans le code source (assez lisible et découpé en pas mal de modules). Donc j’imagine, que ces bugs ou features manquantes arriveront bientôt.

Pour ma part, lors de l’utilisation du parsing html, le parsing étant fait par split, il arrivait que les liens n’était pas les bon, j’ai donc remplacé la chose par un regexp :

Pour ceux ayant ce problème, il faut modifier le fichier « service_manager » à la ligne 105 et remplacer :

         if "http://" in link:
            tmp = link.split("http://").pop()
            if "<" in tmp:
               tmp = tmp.split("<")[0]
            elif " " in tmp:
               tmp = tmp.split(" ")[0]
            elif "[" in tmp:
               tmp = tmp.split("[")[0]
            elif "'" in tmp:
               tmp = tmp.split("'")[0]

par

         clean = re.search("http://([^\"' ]*)",link)
         if clean :
            tmp = clean.group(1)

Et hop, magie magie et plus de junk, c'est beau les regexp quand même ;), les 2 autres problèmes cités plus haut prendront eux plus de temps à corriger, mais l'équipe doit être dessus ...

Donc voilà, si vous cherchez une alternative à JDownloader, Tucan pourrait peut être vous interessez.