16 April 2024


formation avancée au référencement

Posts Tagged ‘spam commentaires’

Comment poster des commentaires automatiquement

Mardi, février 16th, 2010

Pour mon premier billet de l’année 2010 (je sais, je n’écris pas beaucoup ces temps-ci), je vous présente une petite fonction qui vous permettra de poster des commentaires automatiquement.
La fonction est très simple, voire simpliste, mais permet de gagner beaucoup de temps lorsque l’on souhaite faire des commentaires en masse sur les blogs WordPress.

Spam commentaires WordPress

Quelques explications sur la soumission automatique de commentaires

Ce script s’applique aux blogs de la plateforme WordPress.
Ce système de blogging est très apprécié pour sa facilité d’utilisation et ses toujours plus nombreuses extensions (plugins) qui permettent à de nombreux webmasters plus ou moins novices d’obtenir les résultats qu’ils souhaitent sans avoir à toucher au code.

Voici une petite explication quant au fonctionnememnt du script. Pour faire simple, la publication d’un commentaire se fait par la soumission d’un formulaire utilisant la méthode POST.
Ce formulaire contient différents champs dont certains sont requis par défaut, ou selon le paramètrage du webmaster.
Le script permet de simuler la validation de ce formulaire, mais à distance. Ainsi, on envoie au script qui gère la publication des commentaires tous les champs dont il a besoin pour enregistrer une nouvelle discussion.
Pour ce faire, nous utilisons la bibliothèque CURL, pour une question de simplicité. On pourrait cependant tout à fait utiliser la fonction file_get_contents() assortie d’un contexte HTTP contenant les informations nécessaires à la soumission du formulaire.
Voici le code PHP de la fonction…

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
/**
 *  Poster automatiquement des commentaires sur les blogs WordPress
 *  @author  BlackMelvyn http://www.theblackmelvyn.com/
 *  @param  $blog_url  URL du blog à spammer (ex: http://www.thesplog.tld), sans trailing slash !
 *  @param  $post_id  id du billet qui va accueillir le commentaire
 *  @param  $author  nom de l'auteur du commentaire
 *  @param  $email  champ e-mail du commentaire
 *  @param  $site_url  URL vers votre site
 *  @param  $comment  Le commentaire sur le billet
 */
function postWPComment($blog_url, $post_id, $author, $email, $site_url, $comment){
  $timeout = 6;
  $cookie = '';
  $useragent = 'Mozilla 5.0';
  $url = $blog_url.'/wp-comments-post.php';
  $referer = $blog_url.'/?p='.$post_id;
  $postfields = array(
    'author' => $author,
    'email' => $email,
    'url' => $site_url,
    'comment' => stripslashes($comment),
    'comment_post_ID' => $post_id
  );
  $ch = curl_init($url);
  curl_setopt($ch, CURLOPT_POST, true);
  curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);
  curl_setopt ($ch, CURLOPT_TIMEOUT, $timeout);
  curl_setopt ($ch, CURLOPT_COOKIEJAR, $cookie);
  curl_setopt ($ch, CURLOPT_COOKIEFILE, $cookie);
  curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
  curl_setopt($ch, CURLOPT_REFERER, $referer);
  curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  $result = curl_exec($ch);
  curl_close($ch);
  echo 'Commentaire posté : '.$post_id.' !<br />';
}
?>

Un peu d’éthique…

Un petit rappel pour les jeunes black hatters, le but de ce script n’est pas de pourrir les blogs des autres ! Soit vous avez un outil perso qui vous permet de gérer vos blogs favoris et de participer à la discussion, soit vous utilisez cette fonction pour vos autoblogs (cela permet de les viabiliser davantage), ou que sais-je… Mais je le rappelle, de tels outils ne sont pas à prendre à la légère, vous avez une responsabilité, sinon une conscience professionnelle ;)
Même si black hat ne rime pas directement avec éthique, ils vont de paire, automatiquement ;)

Faites bon usage de cette fonction qui n’est qu’une partie d’un outil bien plus puissant. Voici donc une première pierre, à vous de terminer l’édifice selon vos idées, vos moyens et votre créativité ! :)