Autor: Iván Alexis - Fecha: Miércoles 20 de Mayo del 2009 - 8 Comentarios

Contenido:

Gracias a los muchos usuarios del Irc que se dedican a escribir pésimo decidí crear un bot que corrija los errores ortográficos de estos individuos, para esto recurrí a un método conocido por muchos, me refiero al famoso Google que nos corrige lo que tipeamos si lo escribimos mal, para mostrarles a que me refiero, haremos dos búsquedas, primero una búsqueda donde escribimos correctamente.

En este caso Google nos proporciona una búsqueda de acuerdo a lo que buscamos sin ningun tipo de advertencia ante nuestra escritura, ahora pongámonos en el caso de que escribimos algo mal.

Como podemos ver  Google nos corrigió nuestro problema de escritura, entonces, implementé un bot en PHP que hace los siguientes pasos:

1.- Se conecta a un servidor IRC específico.
2.- Entra a un canal específico
3.- Toma el texto escrito por un usuario cualquiera y le hace una consulta a google
4.- Si google no lo corrige, no hace nada, si google lo corrige envía la corrección al canal especificado

Esta es una muestra del script corriendo y funcionando:

El codigo PHP del script que ocupé para esto, llegar y ejecutar es el siguiente:

PLAIN TEXT
PHP:
  1. // El Nick
  2.  
  3. $me="Puta_de_Google";
  4.  
  5. // El Ident
  6.  
  7. $me_ident="scripts";
  8.  
  9. // El Nombre real
  10.  
  11. $me_realname="Soy una puta";
  12.  
  13. // El servidor y puerto
  14.  
  15. $servidor="ircchat.terra.cl";
  16. $puerto=7000;
  17.  
  18. // Nos conectamos al servidor
  19.  
  20. $server = fsockopen($servidor, $puerto, $errno, $errstr, 30);
  21.  
  22. // Nos logeamos al servidor
  23.  
  24. $ctm="\r\n";
  25. $line="nick ".$me;
  26. fwrite($server, $line.$ctm);
  27. $line="user ".$me_ident." text text :".$me_realname;
  28.  
  29. // Hacemos consultas al servidor
  30.  
  31. fwrite($server, $line.$ctm);
  32. $utime=time();
  33. $seescribio=3;
  34.  
  35. // El canal IRC al cual entra
  36.  
  37. $elcanal="#bot";
  38. $_elcanal=substr($elcanal,1);
  39.  
  40. // Entramos al canal
  41.  
  42. $line="join ".$elcanal;
  43. fwrite($server, $line.$ctm);
  44. $tiemporq=20;
  45. while(!feof($server)) {
  46. $buffer = fgets($server, 4096);
  47. $_buffer = explode(" ",$buffer);
  48. $_buffer[2]=strtolower($_buffer[2]);
  49. $buffercero=$_buffer[0];
  50.  
  51. // Responde PONG al servidor para no desconectarse
  52.  
  53. if ("PING" == $_buffer[0]) {
  54. fwrite($server,'PONG '.str_replace(':','',$_buffer[1]));
  55. }
  56. // Comandos en un canal.
  57.  
  58. if ($_buffer[1]=="PRIVMSG") {
  59. if (stristr($_buffer[2],"#")) {
  60.  
  61. // Guardamos el texto que escribio un usuario cualquiera a $msg
  62.  
  63. $n=strlen($_buffer[0].$_buffer[1].$_buffer[2]);
  64. $n=$n+4;
  65. $msg=substr($buffer,$n);
  66. $msg=rtrim($msg);
  67.  
  68. // Le hacemos la consulta a google.cl y esperamos respuesta
  69.  
  70. $respuesta_google=google_quizas($msg);
  71.  
  72. // Si hay respuesta enviamos el texto al canal
  73.  
  74. if ($respuesta_google) {
  75. $line="PRIVMSG ".$elcanal." :Quizas quiso decir: ".$respuesta_google;
  76. fwrite($server, $line.$ctm);
  77. }
  78.  
  79. }
  80. }
  81. }
  82. // Funciones.
  83.  
  84. function google_quizas($palabra) {
  85.  
  86. $palabra=str_replace(" ", "+",$palabra);
  87. $bufer="";
  88. $gestor = @fopen("http://www.google.cl/search?hl=es&q=".$palabra."&btnG=Buscar+con+Google&meta=&aq=f&oq=", "r");
  89. while (!feof($gestor)) {
  90. $bufer = $bufer.fgets($gestor, 4096);
  91. }
  92. fclose ($gestor);
  93.  
  94. $separador1=explode("quiso decir:",$bufer);
  95. $separador2=explode("class=p>",$separador1[1]);
  96. $separador3=explode("",$separador2[1]);
  97.  
  98. $separador3[0]=rtrim($separador3[0]);
  99.  
  100. $dev=str_replace("<strong>", "",$separador3[0]);
  101. $dev=str_replace("<em>", "",$dev);
  102. $dev=str_replace("</em>", "",$dev);
  103. $dev=str_replace("</strong>", "",$dev);
  104.  
  105. if ($dev) {
  106. return $dev;
  107. }
  108. else {
  109. return NULL;
  110. }
  111.  
  112. }
  113. ?&gt;

Ehhh, y eso seria todo, de nada.

Compartir Si te gustó esta publicación, la puedes Compartir y Guardar en tu sitio favorito.

Categorías: General, Scripts • Etiquetas: , , , , , , Volver al principio

8 Comentarios en “Puta de Google.”

admin CHILE Debian GNU/Linux Mozilla Firefox 3.0.6 // Miércoles 20 de Mayo del 2009

Una aclaración.
¿Quien nos corrige a cada rato cosas estúpidas, ehh?
Pues “Una Puta”

Por eso le llame “Puta de Google”

:D


pl0sh MEXICO Windows XP Mozilla Firefox 3.0.10 // Jueves 21 de Mayo del 2009

Ajaja buen b0t, felicidades! (y)


Patricia Cummins CHILE Windows XP Internet Explorer 7.0 // Sábado 23 de Mayo del 2009

No entiendo nada.. la informática no es mi fuerte..sorry


Mari CHILE Windows XP Google Chrome 2.0.172.30 // Sábado 6 de Junio del 2009

Lo único que puedo decir, es que AMÉ el bot que inventaste …
odio las faltas de ortografía!!!

Viva la Puta_de_Google!!


Xiimeniita CHILE Windows XP Mozilla Firefox 3.0.10 // Domingo 7 de Junio del 2009

Juajauajaua sabes? me gustó mucho esto, porque en verdad yo tenía exelente ortografía y con esto del chat e irc a veces me pierdo, se me olvidan como se escriben algunas palabras y me da verguenza hahaahah y aun más, me da verguenza ajena leer a personas del sexo opuesto escribiendo mal y se excusan diciendo que es chat y que da lo mismo, podría pasar por alto algunas faltas pero hay unas muy obvias como cuando confunden el Hay, Ayy, y el ahí! cuando leo esas palabras y las escriben mal definitivamente me matan las pasiones :D jahahaah hasta recuerdo un día en clases, me tocó salir al pizarrón a escribir unas cosas (porque mi letra era la más linda del curso) y en una de esas se me olvidó como se escrbia x palabra y se lo pregunte a mi profesora que también era Jefe de Carrera y me dice, Xime por Dios, parece que mucho chat le está haciendo mal! y yo :$ moría de verguenza hahah y peor, tenía que admitir que estaba en lo cierto jajaja y eso ;D

Saludos Invancito ito tio ^^


Iván Alexis CHILE Linux Mozilla Firefox 3.0.11 // Martes 23 de Junio del 2009

Actualizacion de v1.0 a v1.1

Nuevo:
v1.1 – Cambio en el sistema de google, actualización de la función.


DsC Windows NT Google Chrome 4.1.249.1045 // Domingo 27 de Junio del 2010

No funciona :(


RoyAllison Windows NT Internet Explorer 7.0 // Lunes 16 de Agosto del 2010

All people deserve good life time and personal loans or financial loan would make it much better. Because people’s freedom is grounded on money state.



Escribe un comentario:


*
A continuacion, debe escribir el codigo mostrado en la imagen.
Anti-Spam Image