<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>El Blog de Creador S.A.</title>
	<atom:link href="http://creadorsa.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://creadorsa.wordpress.com</link>
	<description>El diario del desarrollador</description>
	<lastBuildDate>Fri, 14 Oct 2011 14:15:33 +0000</lastBuildDate>
	<language>es</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='creadorsa.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>El Blog de Creador S.A.</title>
		<link>http://creadorsa.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://creadorsa.wordpress.com/osd.xml" title="El Blog de Creador S.A." />
	<atom:link rel='hub' href='http://creadorsa.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Posteando una extracción a Twitter automáticamente</title>
		<link>http://creadorsa.wordpress.com/2011/09/07/posteando-una-extraccion-a-twitter-automaticamente/</link>
		<comments>http://creadorsa.wordpress.com/2011/09/07/posteando-una-extraccion-a-twitter-automaticamente/#comments</comments>
		<pubDate>Wed, 07 Sep 2011 02:56:03 +0000</pubDate>
		<dc:creator>creadorsa</dc:creator>
				<category><![CDATA[Creador OPEN]]></category>
		<category><![CDATA[Ejemplos]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://creadorsa.wordpress.com/?p=285</guid>
		<description><![CDATA[En este tutorial veremos cómo automatizar una extracción web (en este caso de la UF del Banco Central) y publicarla automáticamente todos los dias a las 9:30am en una cuenta de Twitter, utilizando la plataforma Creador OPEN.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=285&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>En el siguiente tutorial les mostraré como realizar algo que puede generarles un valor agregado de manera simple. Vamos a extraer el valor de la UF del Banco Central de Chile y postear esta información en nuestra cuenta de Twitter.</p>
<p><span id="more-285"></span>Para realizar este ejemplo necesitaremos crear una aplicación en Twitter y nuestro bundle Creador OPEN actualizado a la última versión.</p>
<p>Para crear una aplicación en Twitter, debemos:</p>
<ol>
<li>Ir a http://dev.twitter.com.</li>
<li>Ingresar (Signin) con las credenciales de nuestra cuenta.</li>
<li>Presionar el botón Create an App.</li>
<li>Ingresamos un nombre (Name), una descripción (Description) la url de nuestro homepage (Website).</li>
<li>Marcamos estar de acuerdo con los terminos de uso y capcha y presionamos &#8220;Create your Twitter Application&#8221;</li>
<li>Buscamos y guardamos los valores (en un bloc de notas) de los siguientes items:</li>
<ol>
<li>Consumer Key</li>
<li>Consumer Secret</li>
<li>Access Token (si no aparece, presionar &#8220;Create Access Token&#8221;)</li>
<li>Access Token Secret</li>
</ol>
</ol>
<p>Lo siguiente es crear nuestro proyecto.</p>
<p>Digamos que se llamará &#8220;twituf&#8221;, para lo cual crearemos la carpeta &#8220;twituf&#8221; en el directorio /apps/ de nuestro servidor. Luego crearemos un archivo llamado &#8220;accion.cfm&#8221; (o como quieran llamarle) y escribiremos lo siguiente para rescatar el valor de la UF:</p>
<pre class="brush: coldfusion;">
&lt;!--- obtenemos valor de UF de Banco Central ---&gt;
&lt;cfset object=CreateObject(&quot;component&quot;,&quot;base.apis.sparser&quot;)&gt;
&lt;cfset parser=object.init(&quot;http://www.bcentral.cl/index.asp&quot;)&gt;
&lt;cfset uf=parser.selector(&quot;div##ind-dia tr.odd td:eq(2)&quot;).text()&gt;
</pre>
<p>Luego, componemos el mensaje y lo enviamos a nuestra cuenta de Twitter, con el siguiente codigo:</p>
<pre class="brush: coldfusion;">
&lt;!--- obtenemos valor de UF de Banco Central ---&gt;
&lt;cfset object=CreateObject(&quot;component&quot;,&quot;base.apis.sparser&quot;)&gt;
&lt;cfset parser=object.init(&quot;http://www.bcentral.cl/index.asp&quot;)&gt;
&lt;cfset uf=parser.selector(&quot;div##ind-dia tr.odd td:eq(2)&quot;).text()&gt;
&lt;!--- componemos mensaje ---&gt;
&lt;cfset mensaje=&quot;Valor de la UF hoy &quot; &amp; DateFormat(now(),&quot;dd-mm-yyyy&quot;) &amp; &quot; $&quot; &amp; uf&gt;
&lt;!--- enviamos a Twitter ---&gt;
&lt;cfset consumerKey = &quot;tu consumer key&quot;&gt;
&lt;cfset consumerSecret = &quot;tu consumer secret&quot;&gt;
&lt;cfset accessToken = &quot;tu access token value&quot;&gt;
&lt;cfset accessTokenSecret = &quot;tu access token secret&quot;&gt;
&lt;cfset twitter=CreateObject(&quot;component&quot;,&quot;base.apis.ctwitter&quot;)&gt;
&lt;cfset twitter.init(consumerKey,consumerSecret,accessToken,accessTokenSecret)&gt;
&lt;cfset twitter.updateStatus(mensaje)&gt;
</pre>
<p>Ahora lo que nos falta es agregar un parámetro para que solo se ejecute esta página cuando se lo digamos&#8230; Porque de lo contrario, cada vez que google visite la página se enviaría un mensaje a Twitter&#8230;</p>
<p>Para esto, modificamos el archivo con lo siguiente:</p>
<pre class="brush: coldfusion;">
&lt;cfparam name=&quot;ejecutar&quot; default=&quot;false&quot;/&gt;
&lt;cfif ejecutar&gt;
   &lt;!--- obtenemos valor de UF de Banco Central ---&gt;
   &lt;cfset object=CreateObject(&quot;component&quot;,&quot;base.apis.sparser&quot;)&gt;
   &lt;cfset parser=object.init(&quot;http://www.bcentral.cl/index.asp&quot;)&gt;
   &lt;cfset uf=parser.selector(&quot;div##ind-dia tr.odd td:eq(2)&quot;).text()&gt;
   &lt;!--- componemos mensaje ---&gt;
   &lt;cfset mensaje=&quot;Valor de la UF hoy &quot; &amp; DateFormat(now(),&quot;dd-mm-yyyy&quot;) &amp; &quot; $&quot; &amp; uf&gt;
   &lt;!--- enviamos a Twitter ---&gt;
   &lt;cfset consumerKey = &quot;tu consumer key&quot;&gt;
   &lt;cfset consumerSecret = &quot;tu consumer secret&quot;&gt;
   &lt;cfset accessToken = &quot;tu access token value&quot;&gt;
   &lt;cfset accessTokenSecret = &quot;tu access token secret&quot;&gt;
   &lt;cfset twitter=CreateObject(&quot;component&quot;,&quot;base.apis.ctwitter&quot;)&gt;
   &lt;cfset twitter.init(consumerKey,consumerSecret,accessToken,accessTokenSecret)&gt;
   &lt;cfset twitter.updateStatus(mensaje)&gt;
&lt;cfelse&gt;
   Falta parametro ejecutar.
&lt;/cfif&gt;
</pre>
<p>Por último, solo nos resta definir el archivo events.xml para agendar la ejecución de este posteo a una vez por día, digamos a las 9:30am de cada día. Esto se hace creando un evento en el archivo events.xml (creándolo o editándolo) de nuestra carpeta:</p>
<pre class="brush: xml;">
&lt;event id=&quot;paraTwitter&quot; start=&quot;30/8/2011 09:30&quot; value=&quot;1&quot; type=&quot;day&quot;&gt;
   &lt;page&gt;accion.cfm?ejecutar=true&lt;/page&gt;
&lt;/event&gt;
</pre>
<p>Al guardarlo, la plataforma CreadorOPEN automáticamente dejará programada la ejecución para, en este caso, ejecutar la página accion.cfm con el parámetro ejecutar en true, una vez por dia (value=&#8221;1&#8243; type=&#8221;day&#8221;), desde el día 30 de Agosto a las 9:30am, lo que provocará la ejecución de la página todos los días a las 9:30am. Para detener la programación, solo basta remover el evento.</p>
<p>Espero que este tutorial les abra los ojos y permita hacer alarmas con información útil para sus consumidores. Esto mismo se puede aplicar para, por ejemplo, postear los terremotos de alguna parte, la última noticia publicada por un sitio web x, por ejemplo de noticias, las condiciones climáticas, etc.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/creadorsa.wordpress.com/285/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/creadorsa.wordpress.com/285/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/creadorsa.wordpress.com/285/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/creadorsa.wordpress.com/285/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/creadorsa.wordpress.com/285/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/creadorsa.wordpress.com/285/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/creadorsa.wordpress.com/285/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/creadorsa.wordpress.com/285/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/creadorsa.wordpress.com/285/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/creadorsa.wordpress.com/285/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/creadorsa.wordpress.com/285/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/creadorsa.wordpress.com/285/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/creadorsa.wordpress.com/285/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/creadorsa.wordpress.com/285/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=285&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://creadorsa.wordpress.com/2011/09/07/posteando-una-extraccion-a-twitter-automaticamente/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4e3447e898d6bb44072def874cbd3a41?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">creadorsa</media:title>
		</media:content>
	</item>
		<item>
		<title>Soporte para extension de archivos .PHP !</title>
		<link>http://creadorsa.wordpress.com/2011/09/04/soporte-para-extension-de-archivos-php/</link>
		<comments>http://creadorsa.wordpress.com/2011/09/04/soporte-para-extension-de-archivos-php/#comments</comments>
		<pubDate>Sun, 04 Sep 2011 14:06:24 +0000</pubDate>
		<dc:creator>creadorsa</dc:creator>
				<category><![CDATA[Creador OPEN]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Noticias]]></category>

		<guid isPermaLink="false">http://creadorsa.wordpress.com/?p=279</guid>
		<description><![CDATA[Así es, con mucho agrado les cuento que ahora todas las ediciones de Creador OPEN soportan la creación de contenidos móviles utilizando archivos de extensión php. De esta forma, podrán aprovechar todos los asistentes de escritura de código existentes para PHP y al mismo tiempo, utilizar todas las etiquetas de Creador OPEN a las que [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=279&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Así es, con mucho agrado les cuento que ahora todas las ediciones de Creador OPEN soportan la creación de contenidos móviles utilizando archivos de extensión php. De esta forma, podrán aprovechar todos los asistentes de escritura de código existentes para PHP y al mismo tiempo, utilizar todas las etiquetas de Creador OPEN a las que están acostumbrados. Esto se refiere tanto a las etiquetas de presentación de contenidos, como a aquéllas de análisis de información y manipulación de bases de datos. Esperamos que esta combinación sea aún más atractiva para nuestros queridos desarrolladores móviles.</p>
<p><span id="more-279"></span>Veamos un ejemplo &#8220;Hola Mundo&#8221; con algo de código php en el archivo hola.php:</p>
<pre class="brush: php;">

&lt;wap:document&gt;
&lt;wap:head&gt;
&lt;wap:title&gt;Hello there&lt;/wap:title&gt;
&lt;/wap:head&gt;
&lt;wap:body&gt;
&lt;wap:block align=&quot;center&quot;&gt;
&lt;?php
Print &quot;Hello, World!&quot;;
?&gt;
&lt;/wap:block&gt;
&lt;/wap:body&gt;
&lt;/wap:document&gt;
</pre>
<p>Al crear este archivo y llamarlo en un navegador web, podremos utilizar todas las características de Creador OPEN, tales como seguimiento de usuarios desde el administrador, emuladores con el atributo emuid, etc.</p>
<p>Estos archivos PHP soportan el uso estándard de PHP a excepción del comando include, que debe indicar un archivo absoluto.</p>
<p>Veamos a continuación otro ejemplo utilizando un loop.</p>
<p>Archivo repeticion.php</p>
<pre class="brush: php;">

&lt;wap:document&gt;
&lt;wap:head&gt;
&lt;wap:title&gt;Ejemplo con loop&lt;/wap:title&gt;
&lt;wap:cool_menu_css colnum=&quot;2&quot; align=&quot;center&quot; tabularize=&quot;true&quot;/&gt;
&lt;/wap:head&gt;
&lt;wap:body&gt;
&lt;?php
$meses[0] = &quot;Enero&quot;;
$dias[0] = 31;
$meses[1] = &quot;Febrero&quot;;
$dias[1] = 28;
$meses[2] = &quot;Marzo&quot;;
$dias[2] = 31;
$meses[3] = &quot;Abril&quot;;
$dias[3] = 30;
?&gt;
&lt;wap:cool_menu colnum=&quot;2&quot; wml_tables=&quot;true&quot;&gt;
&lt;wap:cell&gt;Mes&lt;/wap:cell&gt;
&lt;wap:cell&gt;Dias&lt;/wap:cell&gt;
&lt;?php
for($i=0; $i&lt;4; $i++) { // Inicio de loop.
?&gt;
&lt;wap:cell&gt;&lt;?php
echo($meses[$i])
?&gt;&lt;/wap:cell&gt;
&lt;wap:cell&gt;&lt;?php
echo($dias[$i])
?&gt;&lt;/wap:cell&gt;
&lt;?php
} // Fin de loop.
?&gt;
&lt;/wap:cool_menu&gt;
&lt;/wap:body&gt;
&lt;/wap:document&gt;
</pre>
<p>Esperamos que esta gran mejora les facilite enormente la integración con aplicaciones y frameworks existentes en PHP.<br />
Mucha suerte en sus desarrollos !</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/creadorsa.wordpress.com/279/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/creadorsa.wordpress.com/279/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/creadorsa.wordpress.com/279/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/creadorsa.wordpress.com/279/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/creadorsa.wordpress.com/279/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/creadorsa.wordpress.com/279/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/creadorsa.wordpress.com/279/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/creadorsa.wordpress.com/279/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/creadorsa.wordpress.com/279/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/creadorsa.wordpress.com/279/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/creadorsa.wordpress.com/279/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/creadorsa.wordpress.com/279/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/creadorsa.wordpress.com/279/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/creadorsa.wordpress.com/279/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=279&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://creadorsa.wordpress.com/2011/09/04/soporte-para-extension-de-archivos-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4e3447e898d6bb44072def874cbd3a41?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">creadorsa</media:title>
		</media:content>
	</item>
		<item>
		<title>Programa ahora también en Python con Creador OPEN</title>
		<link>http://creadorsa.wordpress.com/2011/09/01/programa-ahora-tambien-en-python-con-creador-open/</link>
		<comments>http://creadorsa.wordpress.com/2011/09/01/programa-ahora-tambien-en-python-con-creador-open/#comments</comments>
		<pubDate>Thu, 01 Sep 2011 14:37:24 +0000</pubDate>
		<dc:creator>creadorsa</dc:creator>
				<category><![CDATA[Creador OPEN]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Mejoras]]></category>
		<category><![CDATA[Noticias]]></category>
		<category><![CDATA[creador]]></category>
		<category><![CDATA[lenguajes programacion]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://creadorsa.wordpress.com/?p=273</guid>
		<description><![CDATA[Le damos la bienvenida al lenguaje de programación Python a la plataforma de desarrollos móviles Creador OPEN. Soportando ya programación en PHP, Ruby, Coldfusion, Groovy, Javascript y ahora Python, Creador OPEN es compatible con todos los programadores, permitiéndo a cualquiera de ellos utilizar sus conocimientos existentes para trabajar en el medio móvil. Adicionalmente, permite conectarse con softwares externos existentes, utilizando sus librerías nativas.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=273&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Para aquéllos que conocen Python, les contamos que ahora podrán crear desarrollos móviles usando sus conocimientos! Sí, porque ahora Creador OPEN integra en todas sus ediciones, este famoso lenguaje de programación. Con un rendimiento impresionante, todos los códigos son pre-compilados ejecutándose a velocidades impresionantes casi imperceptibles.</p>
<p><a href="http://creadorsa.files.wordpress.com/2011/09/python.png"><img class="aligncenter size-medium wp-image-276" title="python" src="http://creadorsa.files.wordpress.com/2011/09/python.png?w=300&#038;h=101" alt="" width="300" height="101" /></a></p>
<p>Integrando los ya soportados lenguajes PHP, Ruby, Javascript, Coldfusion y Groovy, el nuevo soporte para Python, hace de Creador OPEN la plataforma de desarrollos móviles más amistosa con los programadores en existencia. Cualquiera sea tu conocimiento de programación, ya no tienes excusa para no trabajar con OPEN. Moviliza cualquier sitio o aplicación web en tiempo record e interactúa con los datos desde cualquier lenguaje. Compatible con más de 9000 equipos móviles, utiliza las etiquetas de presentación para crear un solo código que se adapte gráficamente a todos los equipos existentes.</p>
<p>Para utilizarla, asegúrense de actualizar su servidor a la última versión y utilizar el código dentro de la ya conocida etiqueta script:new, en este caso con atributo lang=&#8221;python&#8221;.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/creadorsa.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/creadorsa.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/creadorsa.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/creadorsa.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/creadorsa.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/creadorsa.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/creadorsa.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/creadorsa.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/creadorsa.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/creadorsa.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/creadorsa.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/creadorsa.wordpress.com/273/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/creadorsa.wordpress.com/273/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/creadorsa.wordpress.com/273/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=273&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://creadorsa.wordpress.com/2011/09/01/programa-ahora-tambien-en-python-con-creador-open/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4e3447e898d6bb44072def874cbd3a41?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">creadorsa</media:title>
		</media:content>

		<media:content url="http://creadorsa.files.wordpress.com/2011/09/python.png?w=300" medium="image">
			<media:title type="html">python</media:title>
		</media:content>
	</item>
		<item>
		<title>Comunicado de Prensa</title>
		<link>http://creadorsa.wordpress.com/2011/08/20/comunicado-de-prensa/</link>
		<comments>http://creadorsa.wordpress.com/2011/08/20/comunicado-de-prensa/#comments</comments>
		<pubDate>Sat, 20 Aug 2011 03:01:19 +0000</pubDate>
		<dc:creator>creadorsa</dc:creator>
				<category><![CDATA[Creador OPEN]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Noticias]]></category>

		<guid isPermaLink="false">http://creadorsa.wordpress.com/?p=263</guid>
		<description><![CDATA[Creador se complace en anunciar que a partir de hoy 19 de Agosto de 2011, nuestras herramientas y plataforma Creador OPEN dejan de ser betas gratuitas y pasan a ser comerciales. Estos cambios se verán reflejados en un mejor funcionamiento de todas nuestras herramientas y servicios exclusivos para quienes las utilicen. Entregaremos soporte, constantes mejoras, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=263&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Creador se complace en anunciar que a partir de hoy 19 de Agosto de 2011, nuestras herramientas y plataforma Creador OPEN dejan de ser betas gratuitas y pasan a ser comerciales.</p>
<p>Estos cambios se verán reflejados en un mejor funcionamiento de todas nuestras herramientas y servicios exclusivos para quienes las utilicen. Entregaremos soporte, constantes mejoras, hosting, servicios de conversión de audio y video, clases online, tutoriales de ayuda y servicios que se irán integrando con el tiempo, ya que Creador se caracteríza por ser innovador y siempre estar a la vanguardia con nuevos desafíos.</p>
<p>En la página de <a title="Productos" href="http://www.creador.cl/index2.cfm?pagina=productos" target="_blank">Productos</a> encontrarán toda la información de nuestro nuevo sistema de oferta, asi como la capacidad de adquirir los productos online.</p>
<p>Agradecemos desde ya, a todos nuestros clientes por preferir nuestros servicios y productos.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/creadorsa.wordpress.com/263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/creadorsa.wordpress.com/263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/creadorsa.wordpress.com/263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/creadorsa.wordpress.com/263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/creadorsa.wordpress.com/263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/creadorsa.wordpress.com/263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/creadorsa.wordpress.com/263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/creadorsa.wordpress.com/263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/creadorsa.wordpress.com/263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/creadorsa.wordpress.com/263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/creadorsa.wordpress.com/263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/creadorsa.wordpress.com/263/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/creadorsa.wordpress.com/263/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/creadorsa.wordpress.com/263/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=263&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://creadorsa.wordpress.com/2011/08/20/comunicado-de-prensa/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4e3447e898d6bb44072def874cbd3a41?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">creadorsa</media:title>
		</media:content>
	</item>
		<item>
		<title>Extracción de Valores Económicos del BCI (usando interpretación de Javascript)</title>
		<link>http://creadorsa.wordpress.com/2011/08/04/extraccion-de-valores-economicos-del-bci-usando-interpretacion-de-javascript/</link>
		<comments>http://creadorsa.wordpress.com/2011/08/04/extraccion-de-valores-economicos-del-bci-usando-interpretacion-de-javascript/#comments</comments>
		<pubDate>Thu, 04 Aug 2011 20:57:03 +0000</pubDate>
		<dc:creator>creadorsa</dc:creator>
				<category><![CDATA[Ejemplos]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[bci]]></category>
		<category><![CDATA[creadorOPEN]]></category>
		<category><![CDATA[ejemplo]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[movilización]]></category>

		<guid isPermaLink="false">http://creadorsa.wordpress.com/?p=243</guid>
		<description><![CDATA[Veremos cómo extraer la información de todos los valores financieros públicos del sitio web BCI.cl, ejecutándo la información descrita en su Javascript en Creador OPEN, de forma eficiente y efectiva, sin utilizar Selenium.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=243&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Estimados amigos, les presento este tutorial, como una versión alternativa para extraer la información de los valores económicos públicos del sitio web del banco BCI. En esta versión, utilizaremos la capacidad de interpretación de Javascript desde el lado de Creador OPEN, sin utilizar Selenium. En concreto, importaremos el script que contiene los valores usando sParser y lo ejecutaremos en nuestro servidor (script:new), agregaremos algunas funciones javascript propias para facilitar el uso de la información, y llamaremos estas desde Coldfusion.</p>
<p>La velocidad de ejecución de esta versión es notoriamente rápida, ya que no debe abrirse ningún navegador especial. Sin embargo, requiere mayor análisis de nuestra parte. Como beneficio adicional, este script puede ser ejecutado en una instancia de Creador OPEN de GoogleApp.</p>
<p><span id="more-243"></span>A continuación veremos desde dónde obtenemos la información que necesitamos.</p>
<p>Si ingresamos a <strong>http://www.bci.cl/personas/</strong>, veremos la siguiente pantalla:</p>
<p><a href="http://creadorsa.files.wordpress.com/2011/08/bci1.jpg"><img class="alignnone size-medium wp-image-229" title="Portada del BCI con area de extraccion destacada" src="http://creadorsa.files.wordpress.com/2011/08/bci1.jpg?w=300&#038;h=183" alt="" width="300" height="183" /></a></p>
<p>Al ver su código fuente donde se encuentran los valores, veremos que se hace referencia a un array llamado <strong>arrValores</strong>, por lo tanto lo que tenemos que hacer es ver o &#8220;buscar&#8221; en qué parte de la página se define ese array. Como conclusión, nos damos cuenta que al comienzo del código de la página se incluye un script de enlace <strong>http://www.bci.cl/common/include/valores.js</strong>, que es el responsable de definir este array.</p>
<p><a href="http://creadorsa.files.wordpress.com/2011/08/bci-vercodigo2.jpg"><img class="alignnone size-medium wp-image-231" title="codigo en bruto de pagina bci con valores deseados esta en javascript" src="http://creadorsa.files.wordpress.com/2011/08/bci-vercodigo2.jpg?w=300&#038;h=213" alt="" width="300" height="213" /></a><a href="http://creadorsa.files.wordpress.com/2011/08/bci2.jpg"><img class="alignnone size-medium wp-image-244" title="inicio de codigo fuente con script referido" src="http://creadorsa.files.wordpress.com/2011/08/bci2.jpg?w=300&#038;h=164" alt="" width="300" height="164" /></a></p>
<p>Por lo tanto, lo primero que debemos hacer con Creador es obtener el código de esa página, para lo que utilizamos el siguiente código:</p>
<pre class="brush: coldfusion;">
&lt;cfset object=CreateObject(&quot;component&quot;,&quot;creador.base.apis.sparser&quot;)&gt;
&lt;cfset parser=object.init(&quot;http://www.bci.cl/common/include/valores.js&quot;)&gt;
&lt;cfset codigo=parser.getContent()&gt;
</pre>
<p>El código obtenido es guardado en la variable codigo, la cual alberga un contenido similar al siguiente:</p>
<p><a href="http://creadorsa.files.wordpress.com/2011/08/bci2_codigo_js.jpg"><img class="alignnone size-medium wp-image-247" title="contenido de pagina javascript" src="http://creadorsa.files.wordpress.com/2011/08/bci2_codigo_js.jpg?w=300&#038;h=106" alt="" width="300" height="106" /></a></p>
<p>Como podemos ver, hay una función llamada <strong>Valor</strong>, que define una estructura con campos y más abajo hay un registro de estos valores para cada tipo de moneda o transacción. Aquí podríamos tratar de extraer la información con complejas expresiones regulares, pero lo que haremos será  mucho más simple. Simplemente ejecutaremos este código en nuestro interprete de Javascript (etiqueta <strong>script:new</strong>) de Creador OPEN y llamaremos los valores de cada registro como si estuvieramos en la página.</p>
<p>Esto lo haremos con el siguiente código:<br />
(nótese que no cerramos el tag script:new aún)</p>
<pre class="brush: coldfusion;">
&lt;script:new lang=&quot;javascript&quot;&gt;
&lt;cfoutput&gt;#codigo#&lt;/cfoutput&gt;
</pre>
<p>Adicionalmente, agregaremos las siguientes funciones de javascript para simplificar el acceso a la información definida por el banco:</p>
<pre class="brush: jscript;">
// creamos funciones de ayuda para leer registros
function leerValor(posicion,campo) {
    // verificamos que campo deseado exista en objeto
    if (arrValores[posicion].hasOwnProperty(campo)) {
        // devolvemos campo de posicion de objeto
        return arrValores[posicion][campo];
    } else {
        // si el campo no existia, devolvemos en blanco
        return &quot;&quot;;
    }
}
function cuantosValores() {
    // devuelve la cantidad de registros que tiene la variable arrValores
    return arrValores.length-1;
}
var getKeys = function(obj){
   var keys = [];
   for(var key in obj){
      keys.push(key);
   }
   return keys;
}
function campos() {
   // obtiene los nombres de los campos disponibles en el objeto arrValores como listado.
   return getKeys(arrValores[1]).toString();
}
function texto_bonito(numero) {
   if (!isNaN(numero)) {
      // si valor dado es numero, formateamos como numero segun script de BCI
      return formatear_numero(numero);
   } else {
      return numero;
   }
}
</pre>
<p>Por último, debemos indicarle a nuestra etiqueta <strong>script:new</strong> qué funciones de nuestro Javascript deseamos llamar desde Coldfusion, lo cual lo hacemos con las siguientes lineas:</p>
<pre class="brush: jscript;">
// exportamos funciones javascript a CreadorOPEN
variables.put('leerValor',leerValor);
variables.put('cuantosValores',cuantosValores);
variables.put('campos',campos);
variables.put('texto_bonito',texto_bonito);
</pre>
<p>Y cerramos el uso de la etiqueta script:new..</p>
<pre class="brush: coldfusion;">
&lt;/script:new&gt;
</pre>
<p>Con lo anterior, la sección Javascript de nuestra página está definida. Lo que falta es llamar las funciones Javascript desde Coldfusion y mostrar la información de los registros en la pantalla (o también la podrían asignar a una variable, estructura, o guardarla en una base de datos, o usarla dentro de un webservice&#8230; en definitiva la información ya la tienen):</p>
<pre class="brush: coldfusion;">
&lt;!--- llamamos funciones javascript ---&gt;
&lt;cfset cuantos=_function_js(object:cuantosValores,arg1:&quot;&quot;)&gt;
&lt;cfset campos=_function_js(object:campos,arg1:&quot;&quot;)&gt;
&lt;!--- mostramos todos los datos de los registros ---&gt;
&lt;cfloop index=&quot;qReg&quot; from=&quot;1&quot; to=&quot;#cuantos#&quot; step=&quot;+1&quot;&gt;
   &lt;cfoutput&gt;&lt;b&gt;Registro: #qReg#&lt;/b&gt;&lt;br&gt;
   &lt;cfloop index=&quot;qCampo&quot; list=&quot;#campos#&quot;&gt;
      &lt;cfset valor=_function_js(object:leerValor,posicion:qReg,campo:qCampo)&gt;
      &lt;cfset valor=_function_js(object:texto_bonito,arg1:valor)&gt;
      &lt;b&gt;#qCampo#:&lt;/wap:b&gt; #valor#&lt;br&gt;
   &lt;/cfloop&gt;
   &lt;/cfoutput&gt;&lt;br&gt;
&lt;/cfloop&gt;
</pre>
<p>El resultado de la ejecución del ejemplo completo sería parecido a esto (solo que con más registros y actualizado):</p>
<p><a href="http://creadorsa.files.wordpress.com/2011/08/bci2_resultado.jpg"><img class="alignnone size-medium wp-image-249" title="ejemplo resultante de script" src="http://creadorsa.files.wordpress.com/2011/08/bci2_resultado.jpg?w=156&#038;h=300" alt="" width="156" height="300" /></a></p>
<p><strong>Nota:</strong> Los campos de presentación están en html y no creador OPEN; si quieren mostrar esta información en un móvil, acuérdense de utilizar los prefijos wap antes de las etiquetas html. Ejemplo: &lt;b&gt; -&gt; &lt;wap:b&gt;.</p>
<p>En definitiva, tenemos aquí un script de extracción muy potente. Se &#8220;cuelga&#8221; de la información de definición y programación definida por el banco para sus valores económicos, utiliza esa misma programación y la &#8220;extiende&#8221; con funciones para facilitar la lectura. Mediante este procedimiento, la información se mantiene actualizada en realtime con el banco, se permite agregar interacción con los datos y obtenerla en el mismo formato que el diseñado por la web original, de forma directa al código de servidor.</p>
<p>Descarga el script completo desde el siguiente link:<br />
<a title="http://cl.ly/3Y3D0A2B2d321T1h3s0s" href="http://cl.ly/3Y3D0A2B2d321T1h3s0s" target="_blank">http://cl.ly/3Y3D0A2B2d321T1h3s0s</a></p>
<p>Mira también el ejemplo de extracción alternativa, más sencillo:<br />
<a title="Extracción de Valores Económicos del BCI" href="http://creadorsa.wordpress.com/2011/08/04/extraccion-de-valores-economicos-del-bci/">Extracción Valores Económicos del BCI (utilizando Selenium y sParser)</a></p>
<p>Aprende más sobre esto con nuestros cursos de Desarrollo Móvil, de manera fácil, rápida y efectiva!</p>
<p>Visítanos en: <a title="http://www.creador.cl" href="http://www.creador.cl" target="_blank">http://www.creador.cl</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/creadorsa.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/creadorsa.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/creadorsa.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/creadorsa.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/creadorsa.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/creadorsa.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/creadorsa.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/creadorsa.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/creadorsa.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/creadorsa.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/creadorsa.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/creadorsa.wordpress.com/243/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/creadorsa.wordpress.com/243/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/creadorsa.wordpress.com/243/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=243&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://creadorsa.wordpress.com/2011/08/04/extraccion-de-valores-economicos-del-bci-usando-interpretacion-de-javascript/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4e3447e898d6bb44072def874cbd3a41?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">creadorsa</media:title>
		</media:content>

		<media:content url="http://creadorsa.files.wordpress.com/2011/08/bci1.jpg?w=300" medium="image">
			<media:title type="html">Portada del BCI con area de extraccion destacada</media:title>
		</media:content>

		<media:content url="http://creadorsa.files.wordpress.com/2011/08/bci-vercodigo2.jpg?w=300" medium="image">
			<media:title type="html">codigo en bruto de pagina bci con valores deseados esta en javascript</media:title>
		</media:content>

		<media:content url="http://creadorsa.files.wordpress.com/2011/08/bci2.jpg?w=300" medium="image">
			<media:title type="html">inicio de codigo fuente con script referido</media:title>
		</media:content>

		<media:content url="http://creadorsa.files.wordpress.com/2011/08/bci2_codigo_js.jpg?w=300" medium="image">
			<media:title type="html">contenido de pagina javascript</media:title>
		</media:content>

		<media:content url="http://creadorsa.files.wordpress.com/2011/08/bci2_resultado.jpg?w=156" medium="image">
			<media:title type="html">ejemplo resultante de script</media:title>
		</media:content>
	</item>
		<item>
		<title>Tutorial Extracción de Valores Económicos del BCI</title>
		<link>http://creadorsa.wordpress.com/2011/08/04/extraccion-de-valores-economicos-del-bci/</link>
		<comments>http://creadorsa.wordpress.com/2011/08/04/extraccion-de-valores-economicos-del-bci/#comments</comments>
		<pubDate>Thu, 04 Aug 2011 17:49:59 +0000</pubDate>
		<dc:creator>creadorsa</dc:creator>
				<category><![CDATA[Ejemplos]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[bci]]></category>
		<category><![CDATA[creadorOPEN]]></category>
		<category><![CDATA[ejemplo]]></category>
		<category><![CDATA[selenium]]></category>
		<category><![CDATA[sparser]]></category>

		<guid isPermaLink="false">http://creadorsa.wordpress.com/?p=228</guid>
		<description><![CDATA[Extraeremos los valores económicos disponibles en el sitio web www.bci.cl/personas/, utilizando los componentes cSelenium y sParser.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=228&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Muchas veces necesitamos los valores económicos tales como el valor del dólar, la UF, la UTM, el Euro o de alguna acción, para mostrarlas a nuestros usuarios, o bien calcular el valor del dólar en nuestra moneda. Estos, existen en portales públicos, y en especial, podemos estar seguros que la información será fidedigna si proviene de un banco.</p>
<p>En esta ocasión veremos cómo utilizando unas pocas líneas de código, podemos extraer los valores económicos del portal del Banco BCI. Una vez los tengamos, los podrán guardar en una base de datos local (modelo), o externalizar como un webservice.</p>
<p><span id="more-228"></span>El sitio de BCI que contiene la información es <a title="http://www.bci.cl/personas/" href="http://www.bci.cl/personas/" target="_blank">http://www.bci.cl/personas</a>.</p>
<p><a href="http://creadorsa.files.wordpress.com/2011/08/bci1.jpg"><img class="alignnone size-medium wp-image-229" title="Portada del BCI con area de extraccion destacada" src="http://creadorsa.files.wordpress.com/2011/08/bci1.jpg?w=300&#038;h=183" alt="" width="300" height="183" /></a></p>
<p>Si vemos su código fuente directamente desde ver Código, nos daremos cuenta que el contenido de la sección que queremos en realidad es el resultado de la ejecución de un script Javascript, y por lo tanto, debe ser interpretada por el navegador antes de estar disponible.</p>
<p><a href="http://creadorsa.files.wordpress.com/2011/08/bci-vercodigo.jpg"><img class="alignnone size-full wp-image-230" title="opcion ver codigo fuente en firefox" src="http://creadorsa.files.wordpress.com/2011/08/bci-vercodigo.jpg?w=246&#038;h=217" alt="" width="246" height="217" /></a>        <a href="http://creadorsa.files.wordpress.com/2011/08/bci-vercodigo2.jpg"><img class="alignnone size-medium wp-image-231" title="codigo en bruto de pagina bci con valores deseados esta en javascript" src="http://creadorsa.files.wordpress.com/2011/08/bci-vercodigo2.jpg?w=300&#038;h=213" alt="" width="300" height="213" /></a></p>
<p>En cualquier otro caso, esto nos imposibilitaria la extracción; sin embargo, Creador te entrega acceso a su poderoso componente <strong>cSelenium</strong>, que te permite controlar un navegador y de esta forma, obtener el código de la página deseada &#8220;tal como lo ve el navegador&#8221;.</p>
<p><a href="http://creadorsa.files.wordpress.com/2011/08/bci-vercodigo3.jpg"><img class="alignnone size-medium wp-image-232" title="codigo pagina bci como lo ve el navegador firefox (sector deseado)" src="http://creadorsa.files.wordpress.com/2011/08/bci-vercodigo3.jpg?w=247&#038;h=300" alt="" width="247" height="300" /></a></p>
<p>Como podemos ver en la captura de arriba, el navegador interpreta estos datos para mostrarlos al usuario, y en &#8220;su versión del código&#8221;, los valores que buscamos se encuentran escritos, por lo que podremos procesarlos con nuestro componente de extracciones <strong>sParser</strong>.</p>
<p>Veamos a continuación cómo obtener el código &#8220;como lo ve el navegador firefox&#8221; utilizando el componente cSelenium:</p>
<pre class="brush: coldfusion;">
&lt;cfset selenium=CreateObject(&quot;component&quot;,&quot;creador.base.apis.cselenium&quot;).init(4446, &quot;&quot;, &quot;firefox&quot;)&gt;
&lt;cfset selenium.open(&quot;http://www.bci.cl/personas/&quot;).wait(2)&gt;
&lt;cfset codigo_pagina_personas=selenium.getPageSource()&gt;
&lt;cfset selenium.quit().stop()&gt;
</pre>
<p>El código de arriba, inicializa el componente <strong>cSelenium</strong>, configura el navegador a utilizar <strong>Firefox</strong>, abre la página deseada y espera 2 segundos a que cargue, luego asigna el código fuente de la página (como lo visualiza <strong>Firefox</strong>) a la variable <strong>codigo_pagina_personas</strong>, y ejecuta el comando salir del navegador y apagar la instancia de <strong>Selenium</strong>. Con solo 4 lineas de código tenemos la información como la interpreta el navegador, lista para ser procesada por nuestro componente de extracciones <strong>sParser</strong>.</p>
<p>Ahora veremos cómo extraer la información segmentada de los valores utilizando nuestro componente <strong>sParser</strong>.</p>
<pre class="brush: coldfusion;">
&lt;cfset object=CreateObject(&quot;component&quot;,&quot;creador.base.apis.sparser&quot;)&gt;
&lt;cfset parser=object.init(codigo_pagina_personas)&gt;
&lt;cfset parser.selector(&quot;script&quot;).replaceWith(&quot; &quot;)&gt;
&lt;cfset valores=parser.selector(&quot;div.indicadores td&quot;).query()&gt;
</pre>
<p>La primera linea, inicializa el componente <strong>sParser</strong> (recuerda utilizar componente sparser2 si utilizas Adobe Coldfusion). La segunda inicializa el parser con el código fuente obtenido de Firefox. La tercera, busca todos los tags <strong>script</strong> y los reemplaza por un espacio vacío, efectivamente eliminándolos (ya que nos los queremos). Por último, la cuarta linea busca todos los tags <strong>td</strong> que se encuentran dentro de un <strong>div</strong> de class <strong>indicadores</strong>, y los obtiene en la forma de una query (o consulta).</p>
<p>Por último, en el código siguiente asignamos los resultados a una variable de estructura llamada <strong>resultados</strong>:</p>
<pre class="brush: coldfusion;">
&lt;cfset resultados=StructNew()&gt;
&lt;cfset resultados.fecha=parser.removeTags(valores._content[1])&gt;
&lt;cfset resultados.uf=parser.removeTags(valores._content[2])&gt;
&lt;cfset resultados.utm=parser.removeTags(valores._content[3])&gt;
&lt;cfset resultados.ipc=parser.removeTags(valores._content[4])&gt;
&lt;cfset resultados.ipsa=parser.removeTags(valores._content[5])&gt;
&lt;cfset resultados.dolar=parser.removeTags(valores._content[6])&gt;
&lt;cfset resultados.euro=parser.removeTags(valores._content[7])&gt;
</pre>
<p>El código anterior, básicamente indica que en la columna <strong>_content</strong>, del primer resultado, se encuentra la fecha de los indicadores, y que queremos eliminar cualquier tag que en este se encuentre (función <strong>parser.removeTags()</strong>), para obtener un valor de texto limpio (ya que, como podemos observar en la captura del código de firefox mostrado arriba, la fecha estaba dentro de un tag <strong>strong</strong>), y este resultado lo asignamos al campo &#8220;fecha&#8221; de la estructura &#8220;resultados&#8221;. Repetimos el paso para los demás valores (primer resultado=fecha, segundo resultado=uf, tercer resultado=utm, cuarto resultado=ipc, etc).</p>
<p>Como podemos ver, la utilización de los componentes de Creador, nos permite traducir de manera muy directa nuestros requerimientos en código, efectivamente logrando el proceso en muy pocos pasos.</p>
<p>Ahora solo resta que utilicen los valores de la variable <strong>resultados</strong> como lo estimen conveniente.</p>
<p>Script completo (versión bundle nativa &#8211; Open Bluedragon):<br />
<a title="http://cl.ly/403h3e2y280C2i393E1k" href="http://cl.ly/403h3e2y280C2i393E1k" target="_blank">http://cl.ly/403h3e2y280C2i393E1k</a><br />
Script completo (versión compatible con Adobe Coldfusion):<br />
<a title="http://cl.ly/1p3r3Q0f1I13271X3a17" href="http://cl.ly/1p3r3Q0f1I13271X3a17" target="_blank">http://cl.ly/1p3r3Q0f1I13271X3a17</a></p>
<p>Aprende esto y mucho más con nuestros cursos de Desarrollo Móvil, de forma rápida, fácil y sencilla. Visítanos en <a title="http://www.creador.cl" href="http://www.creador.cl" target="_blank">http://www.creador.cl</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/creadorsa.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/creadorsa.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/creadorsa.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/creadorsa.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/creadorsa.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/creadorsa.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/creadorsa.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/creadorsa.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/creadorsa.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/creadorsa.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/creadorsa.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/creadorsa.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/creadorsa.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/creadorsa.wordpress.com/228/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=228&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://creadorsa.wordpress.com/2011/08/04/extraccion-de-valores-economicos-del-bci/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4e3447e898d6bb44072def874cbd3a41?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">creadorsa</media:title>
		</media:content>

		<media:content url="http://creadorsa.files.wordpress.com/2011/08/bci1.jpg?w=300" medium="image">
			<media:title type="html">Portada del BCI con area de extraccion destacada</media:title>
		</media:content>

		<media:content url="http://creadorsa.files.wordpress.com/2011/08/bci-vercodigo.jpg" medium="image">
			<media:title type="html">opcion ver codigo fuente en firefox</media:title>
		</media:content>

		<media:content url="http://creadorsa.files.wordpress.com/2011/08/bci-vercodigo2.jpg?w=300" medium="image">
			<media:title type="html">codigo en bruto de pagina bci con valores deseados esta en javascript</media:title>
		</media:content>

		<media:content url="http://creadorsa.files.wordpress.com/2011/08/bci-vercodigo3.jpg?w=247" medium="image">
			<media:title type="html">codigo pagina bci como lo ve el navegador firefox (sector deseado)</media:title>
		</media:content>
	</item>
		<item>
		<title>Instalando CreadorOPEN como un servicio de Windows</title>
		<link>http://creadorsa.wordpress.com/2011/06/28/instalando-creadoropen-como-un-servicio-de-windows/</link>
		<comments>http://creadorsa.wordpress.com/2011/06/28/instalando-creadoropen-como-un-servicio-de-windows/#comments</comments>
		<pubDate>Tue, 28 Jun 2011 16:02:57 +0000</pubDate>
		<dc:creator>creadorsa</dc:creator>
				<category><![CDATA[Creador OPEN]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[creadorOPEN]]></category>
		<category><![CDATA[inicio automatico]]></category>
		<category><![CDATA[produccion]]></category>
		<category><![CDATA[windows service]]></category>

		<guid isPermaLink="false">http://creadorsa.wordpress.com/?p=215</guid>
		<description><![CDATA[Explicando cómo instalar CreadorOPEN como un servicio, para automatizar su ejecución en servidores Windows.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=215&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Muchos me han preguntado cómo pueden dejar <em>automatizada la ejecución de CreadorOPEN en Windows</em>, de la forma de un servicio. Esta es la manera de dejar el servidor en producción, y el comando es muy simple:</p>
<ol>
<li><strong>Inicio</strong> -&gt; <strong>Ejecutar</strong> -&gt; <strong>cmd</strong> (linea de comandos).</li>
<li>Van a <span style="color:#800000;">c:\creador-open-dist\bin</span></li>
<li>Ejecutan la siguiente linea para instalar:<br />
<span style="color:#800000;">Jetty-Service.exe -i jetty-service.conf</span></li>
<li>Ejecutan la siguiente linea para desinstalar:<br />
<span style="color:#800000;">Jetty-Service.exe -r jetty-service.conf</p>
<p></span></li>
</ol>
<p><span style="text-decoration:underline;">Para ejecutar, van a:</span><br />
Panel de <strong>Control</strong> -&gt; <strong>Herramientas</strong> <strong>Administrativas</strong> -&gt; <strong>Servicios</strong>,<br />
buscan el registro &#8220;Creador OPEN&#8221; y lo inician.</p>
<p>&nbsp;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/creadorsa.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/creadorsa.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/creadorsa.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/creadorsa.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/creadorsa.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/creadorsa.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/creadorsa.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/creadorsa.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/creadorsa.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/creadorsa.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/creadorsa.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/creadorsa.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/creadorsa.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/creadorsa.wordpress.com/215/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=215&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://creadorsa.wordpress.com/2011/06/28/instalando-creadoropen-como-un-servicio-de-windows/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4e3447e898d6bb44072def874cbd3a41?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">creadorsa</media:title>
		</media:content>
	</item>
		<item>
		<title>Programa ahora con PHP, Ruby o Groovy en Creador OPEN</title>
		<link>http://creadorsa.wordpress.com/2011/06/25/programa-ahora-con-php-ruby-o-groovy-en-creador-open/</link>
		<comments>http://creadorsa.wordpress.com/2011/06/25/programa-ahora-con-php-ruby-o-groovy-en-creador-open/#comments</comments>
		<pubDate>Sat, 25 Jun 2011 01:26:06 +0000</pubDate>
		<dc:creator>creadorsa</dc:creator>
				<category><![CDATA[Creador OPEN]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Mejoras]]></category>
		<category><![CDATA[Noticias]]></category>
		<category><![CDATA[creador open]]></category>
		<category><![CDATA[groovy]]></category>
		<category><![CDATA[lenguajes programacion]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://creadorsa.wordpress.com/?p=208</guid>
		<description><![CDATA[A partir del bundle 0.184 Creador OPEN permite utilizar los lenguajes PHP, Groovy y Ruby para la creación de aplicaciones móviles multiplataforma.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=208&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Estimados amigos, les quiero contar que agregamos soporte para los lenguajes PHP, Ruby y Groovy a través de la etiqueta script:new en Creador OPEN. Esto significa que ahora podrán crear la parte lógica de sus aplicaciones móviles, utilizando cualquiera de estos lenguajes de programación.<br />
Estas nuevas mejoras, se encuentran en el nuevo bundle 0.184 disponible en nuestro website, asi como en GoogleCode. Asi mismo, agregamos un ejemplo de uso en la aplicación demo, en el archivo llamado scripts.cfm.</p>
<p><img class="alignnone size-full wp-image-221" title="ruby" src="http://creadorsa.files.wordpress.com/2011/06/ruby.jpg?w=169&#038;h=61" alt="" width="169" height="61" /><img class="alignnone size-full wp-image-222" title="groovy" src="http://creadorsa.files.wordpress.com/2011/06/groovy.jpg?w=147&#038;h=72" alt="" width="147" height="72" /><img class="alignnone size-full wp-image-220" title="php5" src="http://creadorsa.files.wordpress.com/2011/06/php5.jpg?w=104&#038;h=58" alt="" width="104" height="58" /></p>
<p><span id="more-208"></span></p>
<h2>Para utilizar Ruby</h2>
<p>Compatible con versiones 1.8.7 y 1.9.2<br />
Ruby es soportado de manera completa, incluyendo el uso de los comandos require &#8216;gem&#8217;.<br />
Ejemplo: (obtiene url dada e imprime contenido):</p>
<pre class="brush: ruby;">
&lt;script:new lang=&quot;ruby&quot;&gt;
require 'open-uri'
open('http://www.creador.cl'){ |f| print f.read }
&lt;/script:new&gt;
</pre>
<h2>Para utilizar PHP</h2>
<p>Compatible con PHP 5</p>
<p>PHP es soportado de manera completa, comportándose la etiqueta como una ventana al contenido de un archivo de extensión PHP.<br />
Ejemplo:</p>
<pre class="brush: php;">
&lt;cfset myname=&quot;Juan&quot;&gt;
&lt;script:new lang=&quot;php&quot;&gt;
Hola &lt;? print($variables[&quot;myname&quot;]); ?&gt; desde PHP.&lt;wap:br/&gt;
Hoy es &lt;? print(Date(&quot;l F d, Y&quot;)); ?&gt;&lt;wap:br/&gt;
&lt;? print(&quot;&lt;wap:b&gt;Esto va en negritas. Como se puede ver se pueden usar tags creador dentro del codigo.&lt;/wap:b&gt;&quot;); ?&gt;&lt;wap:br/&gt;
&lt;/script:new&gt;
</pre>
<h2>Para utilizar Groovy</h2>
<p>Compatible con versión 1.8</p>
<p>Groovy es un lenguaje basado en Java, que permite ejecutar código Java y además optimizar su sintaxis. Entre muchas funciones, permite también utilizar atomos y varios hilos simultáneos.<br />
Ejemplo:</p>
<pre class="brush: groovy;">
&lt;script:new lang=&quot;groovy&quot;&gt;
import java.util.concurrent.atomic.AtomicInteger

def counter = new AtomicInteger()
synchronized out(message) {
println(message)
}

def th = Thread.start {
for( i in 1..8 ) {
sleep 30
out &quot;thread loop $i&lt;wap:br/&gt;&quot;
counter.incrementAndGet()
}
}

for( j in 1..4 ) {
sleep 50
out &quot;main loop $j&lt;wap:br/&gt;&quot;
counter.incrementAndGet()
}
th.join()
assert counter.get() == 12
&lt;/script:new&gt;
</pre>
<h2>General</h2>
<p>En todos los lenguajes, existen las variables &#8220;variables&#8221; (que contiene el scope de las variables definidas en Coldfusion), &#8220;url&#8221; (que contiene los argumentos entregados a la página), &#8220;form&#8221; (que contiene los argumentos recibidos desde un formulario con POST), &#8220;cgi&#8221; (que contiene las variables y headers del scope CGI) y &#8220;session&#8221; (que contiene las variables de session). Para enviar variables y valores a Coldfusion, solo hay que modificar las variables (si ya existen), o bien ejecutar el método put(&#8220;nombreenColdfusiondevar&#8221;,varlocal), según el formato correspondiénte a cada lenguaje.</p>
<p>Adicionalmente, se pueden utilizar cualquier etiqueta de Creador OPEN, mientras estas se encuentren completas, lo que significa que por el momento no pueden contener atributos dinámicos.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/creadorsa.wordpress.com/208/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/creadorsa.wordpress.com/208/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/creadorsa.wordpress.com/208/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/creadorsa.wordpress.com/208/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/creadorsa.wordpress.com/208/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/creadorsa.wordpress.com/208/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/creadorsa.wordpress.com/208/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/creadorsa.wordpress.com/208/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/creadorsa.wordpress.com/208/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/creadorsa.wordpress.com/208/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/creadorsa.wordpress.com/208/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/creadorsa.wordpress.com/208/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/creadorsa.wordpress.com/208/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/creadorsa.wordpress.com/208/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=208&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://creadorsa.wordpress.com/2011/06/25/programa-ahora-con-php-ruby-o-groovy-en-creador-open/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4e3447e898d6bb44072def874cbd3a41?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">creadorsa</media:title>
		</media:content>

		<media:content url="http://creadorsa.files.wordpress.com/2011/06/ruby.jpg" medium="image">
			<media:title type="html">ruby</media:title>
		</media:content>

		<media:content url="http://creadorsa.files.wordpress.com/2011/06/groovy.jpg" medium="image">
			<media:title type="html">groovy</media:title>
		</media:content>

		<media:content url="http://creadorsa.files.wordpress.com/2011/06/php5.jpg" medium="image">
			<media:title type="html">php5</media:title>
		</media:content>
	</item>
		<item>
		<title>Soporte para creación de gráficos en ConceptoWAP</title>
		<link>http://creadorsa.wordpress.com/2011/06/13/soporte-para-creacion-de-graficos-en-conceptowap/</link>
		<comments>http://creadorsa.wordpress.com/2011/06/13/soporte-para-creacion-de-graficos-en-conceptowap/#comments</comments>
		<pubDate>Mon, 13 Jun 2011 15:45:58 +0000</pubDate>
		<dc:creator>creadorsa</dc:creator>
				<category><![CDATA[Concepto WAP]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Mejoras]]></category>
		<category><![CDATA[Noticias]]></category>
		<category><![CDATA[concepto wap]]></category>
		<category><![CDATA[estadisticas]]></category>
		<category><![CDATA[graficos]]></category>

		<guid isPermaLink="false">http://creadorsa.wordpress.com/?p=203</guid>
		<description><![CDATA[Estimados, les quiero contar que desde ayer, se encuentra disponible una actualización que les permitirá crear gráficos para estadísticas en sus diagramas en español desde ConceptoWAP. A continuación les mostraré cómo utilizar esta nueva característica en Concepto. El gráfico mostrado arriba lo resume todo. Basta con crear un nodo con el icono &#8220;Maleta Azul&#8221; de [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=203&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Estimados, les quiero contar que desde ayer, se encuentra disponible una actualización que les permitirá crear gráficos para estadísticas en sus diagramas en español desde ConceptoWAP.</p>
<p><a href="http://creadorsa.files.wordpress.com/2011/06/grafico-votos-motorola.jpg"><img class="alignnone size-full wp-image-204" title="grafico-votos-motorola" src="http://creadorsa.files.wordpress.com/2011/06/grafico-votos-motorola.jpg?w=198&#038;h=328" alt="" width="198" height="328" /></a></p>
<p>A continuación les mostraré cómo utilizar esta nueva característica en Concepto.<span id="more-203"></span></p>
<p><a href="http://creadorsa.files.wordpress.com/2011/06/grafico-votos-codigo.jpg"><img class="aligncenter size-full wp-image-205" title="grafico-votos-codigo" src="http://creadorsa.files.wordpress.com/2011/06/grafico-votos-codigo.jpg?w=500&#038;h=212" alt="" width="500" height="212" /></a></p>
<p>El gráfico mostrado arriba lo resume todo. Basta con crear un nodo con el icono &#8220;Maleta Azul&#8221; de texto &#8220;Crear grafico&#8221;, para que el comando sea reconocido. Soporta cualquier numero de hijos de tipo Serie, los que a su vez soportan cualquier numero de nodos de datos. Las características de presentación de cada nodo se aplicarán a la presentación del gráfico, por lo que:</p>
<ul>
<li>El color del nodo &#8220;Crear grafico&#8221;, definirá el color del texto del titulo.</li>
<li>El color de fondo del nodo &#8220;Crear grafico&#8221;, definirá el color de fondo del gráfico.</li>
<li>El color del nodo &#8220;Serie&#8221;, definirá el color del texto de la legenda, y su color de fondo será el color predeterminado de cada trozo de dato.</li>
<li>El color de fondo de cada nodo &#8220;Dato&#8221;, definirá el color de la barra o trozo de dato.</li>
</ul>
<p><strong>El nodo &#8220;Crear gráfico&#8221; se comporta como una imagen, por lo que:</strong></p>
<ul>
<li>Puede ser utilizado junto al icono &#8220;Autoescalar&#8221; y los iconos Numéricos</li>
<li>Puede ser utilizado dentro de un nodo &#8220;Animacion&#8221;.</li>
</ul>
<p><strong>El nodo &#8220;Crear Grafico&#8221; soporta varios atributos, siendo los más importantes:</strong></p>
<p>3d (true/false)<br />
Define si el gráfico a crear se desea en 3D o 2D.</p>
<p>titulo<br />
Indica el texto a mostrar como titulo dentro del gráfico.</p>
<p>ancho<br />
Ancho de la imágen a generar. Si no se define, se genera en el tamaño recomendado para el equipo actual.</p>
<p>alto<br />
Alto de la imágen a generar. Si no se define, se genera en el tamaño recomendado para el equipo actual.</p>
<p>mostrar (false/true)<br />
Si se especifica en false, la imagen se generará, pero no se mostrará al usuario. Ideal para utilizarla en conjunto al atributo variable.</p>
<p>variable<br />
Nombre de variable en donde definir la ubicación relativa del gráfico recién creado.</p>
<p><strong>El nodo &#8220;Serie&#8221; soporta solamente el atributo tipo, el cual puede tener como valor:</strong></p>
<p>barra<br />
Gráfico de barras verticales</p>
<p>horizontal<br />
Gráfico de barras horizontales</p>
<p>pie<br />
Gráfico de torta</p>
<p>linea<br />
Gráfico lineal</p>
<p>anillos<br />
Gráfico circular</p>
<p>pasos<br />
Gráfico de pasos</p>
<p>disperso<br />
Gráfico de dispersión</p>
<p><strong>El nodo &#8220;Dato&#8221; soporta solamente los atributos:</strong></p>
<p>item<br />
Nombre del item</p>
<p>valor<br />
Monto del item.</p>
<p><strong>Todos los nodos soportan valores dinámicos junto al icono &#8220;Recordar&#8221;.</strong></p>
<p><strong></strong>Como siempre, aquí estamos atentos a cualquier consulta.<br />
Recuerden, que los manuales también se actualizan desde su panel Administrator.</p>
<p>Mucha suerte !</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/creadorsa.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/creadorsa.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/creadorsa.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/creadorsa.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/creadorsa.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/creadorsa.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/creadorsa.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/creadorsa.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/creadorsa.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/creadorsa.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/creadorsa.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/creadorsa.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/creadorsa.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/creadorsa.wordpress.com/203/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=203&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://creadorsa.wordpress.com/2011/06/13/soporte-para-creacion-de-graficos-en-conceptowap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4e3447e898d6bb44072def874cbd3a41?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">creadorsa</media:title>
		</media:content>

		<media:content url="http://creadorsa.files.wordpress.com/2011/06/grafico-votos-motorola.jpg" medium="image">
			<media:title type="html">grafico-votos-motorola</media:title>
		</media:content>

		<media:content url="http://creadorsa.files.wordpress.com/2011/06/grafico-votos-codigo.jpg" medium="image">
			<media:title type="html">grafico-votos-codigo</media:title>
		</media:content>
	</item>
		<item>
		<title>Introducción a Análisis y Extracción de Información Web</title>
		<link>http://creadorsa.wordpress.com/2011/05/09/introduccion-a-analisis-y-extraccion-de-informacion-web/</link>
		<comments>http://creadorsa.wordpress.com/2011/05/09/introduccion-a-analisis-y-extraccion-de-informacion-web/#comments</comments>
		<pubDate>Mon, 09 May 2011 15:51:09 +0000</pubDate>
		<dc:creator>creadorsa</dc:creator>
				<category><![CDATA[Creador OPEN]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[análisis]]></category>
		<category><![CDATA[creador open]]></category>
		<category><![CDATA[extracción web]]></category>
		<category><![CDATA[sparser]]></category>

		<guid isPermaLink="false">http://creadorsa.wordpress.com/?p=185</guid>
		<description><![CDATA[En este artículo, los quiero introducir al tema del análisis y extracción de información web. Este tema es un mundo en sí, y dedica una especial relevancia al desarrollo móvil puesto que la mayor parte  del contenido a llevar en el mano nace de un contenido web. Es así, como se sincronizan valores tales como [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=185&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>En este artículo, los quiero introducir al tema del análisis y extracción de información web. Este tema es un mundo en sí, y dedica una especial relevancia al desarrollo móvil puesto que la mayor parte  del contenido a llevar en el mano nace de un contenido web. Es así, como se sincronizan valores tales como el valor del dólar, valor de la UF, tasas de intercambio comercial. estado del clima, indice de terremotos y mucho más, en sitios y aplicaciones móviles.</p>
<p>Muchos desarrolladores, intentan obtener estos datos de empresas que los ofrecen en la forma de webservices. Y si bien esto es más sencillo, muchas veces son servicios pagados. Hoy, les mostraré que significa análizar esta información, y cómo obtenerla gratis utilizando las herramientas que disponen para ello en la plataforma Creador OPEN.</p>
<p><span id="more-185"></span></p>
<p>Los sitios web están fabricados mayormente por código html y css. Este, contiene un texto estructurado de etiquetas que los navegadores web entienden e interpretan para mostrar colores, imágenes, botones, textos e incluso animaciones, que es lo que &#8220;vemos&#8221; cuando los usamos. Gracias a esto, si vemos un el código fuente de un archivo html, podemos identificar dónde se encuentra el contenido que estamos visualizando.</p>
<p>Tomemos el siguiente caso:</p>
<pre class="brush: xml;">
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Soy el titulo&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;p align=&quot;center&quot;&gt;Hola mundo&lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>Como podemos ver el titulo se encuentra dentro de la &#8220;etiqueta&#8221; title, y el texto que vemos centrado se encuentra dentro de la &#8220;etiqueta&#8221; p, que tiene un atributo &#8220;align&#8221; con valor &#8220;center&#8221;.</p>
<p>A simple vista, es fácil observar esto, pero.. ¿ cómo le decimos a nuestras aplicaciones que queremos esos valores que están en esas ubicaciones ? Pensar en XML es enredado, no siempre funciona, el código queda una masamorra y es muy específico. Otros, desarrolladores web, pensarán en jQuery y sus selectores, que son espectaculares, pero no sirven en un servidor&#8230;</p>
<p>La plataforma Creador OPEN incluye sofisticadas herramientas para lidiar con estas necesidades. Les voy a mostrar cómo se hacen con ella.</p>
<p>En Creador existen 5 formas de obtener información remota (además de las de Coldfusion):</p>
<ol>
<li>Mediante la etiqueta analysis:get_rss. Específica para contenidos de Blogs y RSS.</li>
<li>Mediante la etiqueta analysis:get_tag. Especifica para extraer contenidos y atributos de etiquetas HTML y XML.</li>
<li>Mediante la etiqueta analysis:get_css. Específica para extraer elementos de códigos CSS.</li>
<li>Mediante la etiqueta analysis:extract. Especifica para extraer contenidos mediante patrones de contenido contenido conocido y desconocido.</li>
<li>Mediante el componente sParser. Es el más poderoso para procesar y consultar etiquetas HTML y XML, basado en los selectores de jQuery.</li>
</ol>
<p>A modo de ejemplo, asumiremos que el código de arriba está en un sitio web &#8220;http://www.elsitio.cl/index.html&#8221;, y veremos cómo extraer el titulo y su contenido con las formas 2,4 y 5.</p>
<p>2) <strong>Utilizando etiqueta analysis:get_tag.</strong></p>
<pre class="brush: coldfusion;">

&lt;analysis:get_tag href=&quot;http://www.elsitio.cl/index.html&quot; tag=&quot;title&quot; variable=&quot;eltitulo&quot;/&gt;
&lt;cfif arraylen(eltitulo) gt 0&gt;
El titulo obtenido es: &lt;cfoutput&gt;#eltitulo[1]._contents#&lt;/cfoutput&gt;
&lt;/cfif&gt;
&lt;analysis:get_tag href=&quot;http://www.elsitio.cl/index.html&quot; tag=&quot;p&quot; mustContain=&quot;center&quot; variable=&quot;parrafo&quot;/&gt;
&lt;cfif arraylen(eltitulo) gt 0&gt;
El contenido del archivo es: &lt;cfoutput&gt;#parrafo[1]._contents#&lt;/cfoutput&gt;
&lt;/cfif&gt;
</pre>
<p>Como podemos ver el uso de la etiqueta analysis:get_tag, es muy directo y entrega su resultado en la forma de un array, entregando un registro por cada instancia de la etiqueta encontrada, y en cada una de ellas, una estructura con sus atributos y contenido (_contents).</p>
<p><strong>4) Utilizando la etiqueta analysis:extract.</strong></p>
<pre class="brush: coldfusion;">
&lt;cfsavevariable variable=&quot;elpatrontitulo&quot;&gt;
&lt;title&gt;****titulo****&lt;/title&gt;
&lt;/cfsavevariable&gt;
&lt;cfsavevariable variable=&quot;elpatronparrafo&quot;&gt;
&lt;p align=&quot;****alineacion****&quot;&gt;****contenido****&lt;/p&gt;
&lt;/cfsavevariable&gt;
&lt;analysis:extract href=&quot;http://www.elsitio.cl/index.html&quot; pattern=&quot;#elpatrontitulo#&quot; variable=&quot;resp_titulo&quot; /&gt;
&lt;analysis:extract href=&quot;http://www.elsitio.cl/index.html&quot; pattern=&quot;#elpatronparrafo#&quot; variable=&quot;resp_contenido&quot; /&gt;
&lt;cfif arraylen(resp_titulo) gt 0&gt;
El titulo obtenido es: &lt;cfoutput&gt;#resp_titulo[1].titulo#&lt;/cfoutput&gt;
&lt;/cfif&gt;
&lt;cfif arraylen(resp_contenido) gt 0&gt;
El contenido del archivo es: &lt;cfoutput&gt;#resp_contenido[1].contenido#&lt;/cfoutput&gt; y su alineacion es: &lt;cfoutput&gt;#resp_contenido[1].alineacion#&lt;/cfouput&gt;
&lt;/cfif&gt;
</pre>
<p>Como vemos es un poco más largo para este ejemplo, pero brinda una la oportunidad de obtener partes de un sitio o contenido cualquiera sin estudiarlo mucho. Es interesante ver cómo se obtiene un registro por cada incidencia encontrada que cumple el patrón. Si lo ven, lo buscado se envuelve en 4 asteríscos y se asigna en la respuesta en la forma de campos con el valor escrito. Para hacerlo más claro, se agregó en este ejemplo la extracción del atributo align.</p>
<p><strong>5) Utilizando el componente sParser</strong></p>
<pre class="brush: coldfusion;">
&lt;cfset objeto=CreateObject(&quot;component&quot;,&quot;creador.base.apis.sparser&quot;)&gt;
&lt;cfset parser=objeto.init(&quot;http://www.elsitio.cl/index.html&quot;)&gt;
&lt;cfset eltitulo=parser.selector(&quot;title&quot;).text()&gt;
&lt;cfset elcontenido=parser.selector(&quot;p[align=center]&quot;).text()&gt;
&lt;cfoutput&gt;El titulo es #eltitulo# y el contenido dice: #elcontenido#&lt;/cfoutput&gt;
</pre>
<p>El componente sParser es el más poderoso para la extracción de contenidos basados en etiquetas, y soporta contenidos mal formatos, tales como aquéllos ilustrados en el uso de &lt;br&gt;. Permite realizar extracciones mediante la utilización de selectores de jQuery (lo que fue realizado desde cero para este componente, ya que jQuery no es de servidor), y realizar busquedas y consultas similares a las de una base de datos.</p>
<p>En el ejemplo anterior, utilizamos un selector para la etiqueta title, y llamamos la función text(), que nos entrega el contenido del selector encontrado (en este caso la etiqueta title). Siguiendo el mismo ejemplo, el selector &#8216;p[align=center]&#8216; indica que se desea la etiqueta p que define su atributo align en center, y al llamar luego la función text(), indicamos que queremos su contenido. Los selectores soportan diversas funciones además del uso de text():</p>
<ul>
<li>La función html(), obtiene el contenido html de todas las instancias del selector buscado.</li>
<li>La función text(), obtiene el contenido sin html de todas las instancias del selector buscado.</li>
<li>La función query(), obtiene el selector en la forma de una query de SQL.</li>
<li>La función query(sql search), permite definir una consulta SQL previa a la entrega de la query en forma de SQL.</li>
<li>La función closest(selector), permite obtener el selector más cercado al selector buscado previamente.</li>
<li>Y muchas muchas más (están todas definidas en el wiki).</li>
</ul>
<p>Lo más extraordinario es que todos estos sistemas de extracción están disponibles gratuitamente para que los utilicen.</p>
<p>Disfrútenlas.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/creadorsa.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/creadorsa.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/creadorsa.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/creadorsa.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/creadorsa.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/creadorsa.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/creadorsa.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/creadorsa.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/creadorsa.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/creadorsa.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/creadorsa.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/creadorsa.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/creadorsa.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/creadorsa.wordpress.com/185/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=creadorsa.wordpress.com&amp;blog=11319587&amp;post=185&amp;subd=creadorsa&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://creadorsa.wordpress.com/2011/05/09/introduccion-a-analisis-y-extraccion-de-informacion-web/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4e3447e898d6bb44072def874cbd3a41?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">creadorsa</media:title>
		</media:content>
	</item>
	</channel>
</rss>
