CodeIgniter es un liviano framework para php , que cuenta con bastantes librerías/clases/helpers y opciones muy útiles que nos ahorra mucho tiempo a la hora de empezar a programar.
Lamentablemente CodeIgniter no cuenta con ninguna herramienta para la “extracción” y manipulación de strings útiles, como en este caso usando “Xclass” , una librería que programe para esta tarea.
Cual tarea?
en ocasiones necesitaremos de alguna manera “interactuar” con otra pagina que no nos facilita ninguna api ni herramienta para hacerlo.. pues en este caso supongamos necesitemos extraer las “ultimas noticias” o las “estadisticas del mundial”,”el clima”,”últimos comentarios de una persona”..
Xclass nos facilita la tarea , solo ingresando 3 parámetros:
- La url de la pagina a solicitar la informacion.
- La cadena desde donde se iniciara a extraer.
- La cadena donde se terminara de extraer.
(A parte de webs , Xclass también sirve para cadenas comunes a las que necesitemos extraer una sección)
Instalando Xclass en CodeIgniter
http://xerotutos.vacau.com/Xclass.zip
Para instalar una librería en CodeIgniter , solo necesitamos descargar Xclass.php , ir a la carpeta en donde esta corriendo CodeIgniter->system->application->libraries y pegar Xclass.php.
Siguiendo esto ya “instalamos” Xclass y esta lista para usarse en CodeIgniter.
Usaremos mi perfil de Cristalab , extraeremos mi numero de post,tips,clablevel….
Crearemos un controlador “Xero.php” en la carpeta system->application->controlles con lo siguiente:
Código :
<?php
class Xero extends Controller{
function Xero()
{
parent::Controller();
}
function index()
{
$this->load->library("xclass");
echo $this->xclass->xas('http://www.cristalab.com/usuario/88793-xer0s','<div class=”profile-info”>','<div class=”pie”></div>');
}
}
?>Simplemente es un controlador normal , llamamos a la libreria “Xclass” luego a la funcion con 3 parametros:
Código :
$this->load->library("xclass");
$this->xclass->xas("$target","$primera_cadena","$segunda_cadena");El primer parámetro es la url, el segundo es la primera aparición donde empezaremos a extraer el código y el tercer parámetro indica hasta donde seguirá extrayendo.
La parte que nos interesa:
Código :
<div class=”profile-info“> <p> <big><strong>Xer0s</strong> es <em>Usuario</em> de Cristalab</big><br /> <a href=”http://xerotutos.vacau.com” target=”_userwww“>http://xerotutos.vacau.com</a><br /> <span>Con <strong class=”relevante“>63</strong> de <strong><acronym title=”Nivel de participación en la comunidad. Lo obtienes posteando, con tutoriales, tips, etc.“>clabLevel</acronym></strong></span><br /> Desde el 05 Ene 2010 </p> <p></p> </div> <ul id=”user-stats“> <li class=”mssages-q“><a href=”http://foros.cristalab.com/search.php?search_author=Xer0s“>21 mensajes</a></li> <li>0 tutoriales</li> <li>0 ejemplos</li> <li>1 tips</li> <li>0 artículos</li> </ul> <div class=”pie“></div>
(Extraído del ”Código fuente”)
Mi perfil:(primer parámetro)
http://www.cristalab.com/usuario/88793-xer0s
El segundo parámetro:
<divclass=”profile-info“>
El tercer Parámetro:
<div class=”pie“></div>
Dando como resultado: http://localhost/index.php/xero/

Así de simple ha sido extraer esa información , solo usando el parámetro que extraemos viendo el html que deseamos extraer. También es aconsejable leer sobre expresiones regulares.

http://www.youtube.com/watch?v=dReMBx-5NbI
Por kofres el 19 de Abril de 2010
Buen Aporte
Por palotex el 26 de Abril de 2010
siga asi master.
nota a BHOFs los links de archivos debiesen ser alojados en clab para que perduren en el tiempo
Por genilix el 14 de Septiembre de 2010
contesto
queNo...-piensasque soy *LINDA*? -y el contesto que NO...-me
tienes
en tu*CORAZON*? -y el contesto que NO...-¿Si me fuera, *LLORARIAS ... Ver m ... Ver m ... Ver m ... Ver másásásás ... V ... ... ... ...er más ... Ver más ... Ver más ... Ver más... Ver más ... Ver más ... Ver más... Ver más... Ver más ... Ver más ... Ver más ... Ver más... Ver más ... Ver más... Ver más... Ver más ... Ver más ... Ver más ... Ver más ... Ver más ... Ver más ... Ver más ... Ver más ... Ver más
porMI*?
-ytambién contesto que NO...-Ella TRISTE se dio mediavuelta
para...
IRSE...y E ... ... ... ...L la AGARRO del ...brazo y ...LE DI ...JO ... .. . ...
...
............ ......: No te quiero....*TE AMO!*No pienso que seas linda,
pienso...que*ERES
HERMOSA!*No estas en mi corazón, *ERES MI
CORAZON!*Nolloraría porti,
*MORIRIA POR TI...!!!*Hoy a media noche
túamor se va a dar cuentade
que teama. Algo bonito te va a pasar Mañana
entre la 1 y las 4 de
latarde. Da igual donde estés: en Internet, en el
trabajo?si rompes
estacadena tendrás mala suerte en10 relaciones durante
10 años?Así
que pegaesto en 20 comentarios
En ocasiones suelo usar CodeIgniter en mis proyectos web y mi intención con el tutorial fue promover el uso de CI, hace algo así como un dos años.