Buen dia Nelo pana probé lo que me enviaste hermano claro hay que tomar en cuenta lo que esto escribiendo   es un cliente  que recogeria datos del sistema y luego se lo envio al servidor: lo probe y me arroja el siguiente error<br>
<br>  Can&#39;t call method &quot;value&quot; on an undefined value at /usr/share/perl5/WWW/Mechanize.pm line 1397.<br>***  ignoring at ./<a href="http://canaima_notas23.pl">canaima_notas23.pl</a> line 53.<br><br> EL CODIGO ES EL siguiente no cambia mucho <br>
<br>la linea 53 del codigo es esta<br><br>Gtk2-&gt;main;<br><br>no se como interpretar el error hermano...!  <br><br><br><br><br><br>#!/usr/bin/perl -w<br>=head1<br>####################<br>Sistema:Canaima GNU-Linux<br>Nombre:Canaima-notas<br>
Autor:Equipo de Desarrolladores canaima<br>Descripción:Sistema que permite tomar comentarios del usuario final y ademas datos del sistema<br>que permitiran ampliar el comnetario para una mejor evaluacion del equipo de desarrollo<br>
Fecha: 20/07/10<br>###################<br>=cut<br><br>#   use strict;<br>  use Gtk2 -init;<br>  use Gtk2::GladeXML;  <br>  use WWW::Mechanize;<br><br>  my $buffer_t ;<br>  my $programa = Gtk2::GladeXML-&gt;new(&#39;canaima-notas2.glade&#39;);  <br>
  my $ventana_principal = $programa-&gt;get_widget(&#39;ventana_principal&#39;);<br>  my $t_titulo = $programa-&gt;get_widget(&#39;text_titulo&#39;);<br>  my $t_autor = $programa-&gt;get_widget(&#39;text_autor&#39;);<br># my $notas_t = $programa-&gt;get_widget(&#39;nota&#39;);#textview<br>
  my $boton_e = $programa-&gt;get_widget(&#39;boton_enviar&#39;);<br>  my $boton_c = $programa-&gt;get_widget(&#39;boton_cancelar&#39;);<br>  my $pci = $programa-&gt;get_widget(&#39;pci&#39;); #lspci<br>  my $usb = $programa-&gt;get_widget(&#39;usb&#39;); #lsusb<br>
  my $dpkg = $programa-&gt;get_widget(&#39;dpkg&#39;); #dpkg.log<br>  my $term = $programa-&gt;get_widget(&#39;term&#39;); #term.log<br>  my $d_alma = $programa-&gt;get_widget(&#39;d_alma&#39;); #dispositvo de almacenamientoterm.lo<br>
  my $t_part = $programa-&gt;get_widget(&#39;t_part&#39;); #tabla de particiones    <br>  my $Eprueba = $programa-&gt;get_widget(&#39;label4&#39;);<br>  my $tit_aut = $programa-&gt;get_widget(&#39;label6&#39;);<br>  my $n1 =    $programa-&gt;get_widget(&#39;entry1&#39;);<br>
  my $n2 =    $programa-&gt;get_widget(&#39;entry2&#39;);<br>  my $n3 =    $programa-&gt;get_widget(&#39;entry3&#39;);<br>  my $n4 =    $programa-&gt;get_widget(&#39;entry4&#39;);<br>  my $n5 =    $programa-&gt;get_widget(&#39;entry5&#39;);<br>
  my $n6 =    $programa-&gt;get_widget(&#39;entry6&#39;);<br>  my $n7 =    $programa-&gt;get_widget(&#39;entry7&#39;);<br>  my $n8 =    $programa-&gt;get_widget(&#39;entry8&#39;);<br>  my $n9 =    $programa-&gt;get_widget(&#39;entry9&#39;);<br>
  my $n10 =    $programa-&gt;get_widget(&#39;entry10&#39;);<br>  my $n11 =    $programa-&gt;get_widget(&#39;entry11&#39;);<br>  my $n12 =    $programa-&gt;get_widget(&#39;entry12&#39;);<br>  my $n13 =    $programa-&gt;get_widget(&#39;entry13&#39;);<br>
  my $n14 =    $programa-&gt;get_widget(&#39;entry14&#39;);<br>  my $n15 =    $programa-&gt;get_widget(&#39;entry15&#39;);<br>  my $n16 =    $programa-&gt;get_widget(&#39;entry16&#39;);<br>  $programa-&gt;signal_autoconnect_from_package(&#39;main&#39;);  <br>
  $ventana_principal-&gt;show_all();<br>  <br>  Gtk2-&gt;main;<br>  <br>  sub on_boton_cancelar_clicked {Gtk2-&gt;main_quit;}<br>  <br>  sub on_boton_enviar_clicked {            <br>        my $d_alma1 = $d_alma-&gt;get_active;<br>
        my $t_part1 = $t_part-&gt;get_active;<br>        push (@informe,&quot;****&lt;&lt;&lt;&lt; SISTEMA DE NOTAS CANAIMA &gt;&gt;&gt;&gt;****\n\n&quot;);        <br>        my $tex_1 = $n1-&gt;get_text();<br>        my $w = &amp;validar_nota($tex_1);<br>
        &amp;datos_sistema($w);<br>        my $t_titulo1 = $t_titulo-&gt;get_text();<br>        my $t_autor1 = $t_autor-&gt;get_text();            <br>        my $e =&amp;titulo_autor($t_titulo1,$t_autor1); <br>        #creamos el archivo y almacenamos los datos <br>
          open (DATA, &quot;&gt;/tmp/notas_canaima.txt&quot;); <br>        # Grabamos el archivo con los datos<br>        foreach $dato (@informe)<br>            {<br>                 print DATA $dato;<br>            }<br>
          close(DATA);<br>          chmod (0777, &quot;/tmp/notas_canaima.txt&quot;);<br>        <br>        my $url = &quot;<a href="http://notas.canaima.softwarelibre.gob.ve/enviar_consola">http://notas.canaima.softwarelibre.gob.ve/enviar_consola</a>&quot;;<br>
        my $mech = WWW::Mechanize-&gt;new();<br>        $mech-&gt;get($url);                             # Obtener la página<br>            $mech-&gt;form_name(&#39;f&#39;);                        # Seleccionar el formulario<br>
        $mech-&gt;field(&#39;codigo_form&#39;, $informe);        # Llenar el campo de texto<br>        $mech-&gt;field(&#39;titulo_form&#39;, $t_titulo1); <br>        $mech-&gt;field(&#39;nombre_form&#39;, &quot;$t_autor1&quot;);     # Llenar el campo Name / Title<br>
         my $resultado = $mech-&gt;click();               # Enviar el formulario haciendo click en el boton Send <br>}<br><br>sub validar_nota {<br>#asignaciones,reconsideracion,cuota_ipasme,fe_vida,constancia_estudio,homologacion,embargo,oficios,resol_jp,<br>
#jubilacion_pension,pension_sobreviviente,resol_sob,pasivos_laborales<br>#---------------------------------------------------------------------------<br>    my ($num)=@_;<br>        my $w;<br>        if ($num eq &quot;&quot;){<br>
#             push (@informe,&quot;----- SIN NOTA DEL USUARIO: Por favor es necesario una nota   -----\n&quot;);        <br>            $Eprueba-&gt;set_markup(&quot;----- SIN NOTA DEL USUARIO: Por favor es necesario una nota   -----\n&quot;);<br>
             $w=1;<br>         }else{<br>             $w=0;<br>            push (@informe,&quot;----- NOTA DEL USUARIO -----\n&quot;);<br>            $tex_1 = $n1-&gt;get_text();<br>            $Eprueba-&gt;set_markup(&quot;&quot;);<br>
            push(@informe,$tex_1);<br>            $tex_2 = $n2-&gt;get_text();<br>            push(@informe,$tex_2);<br>            $tex_3 = $n3-&gt;get_text();<br>            push(@informe,$tex_3);<br>            $tex_4 = $n4-&gt;get_text();<br>
            push(@informe,$tex_4);<br>            $tex_5 = $n5-&gt;get_text();<br>            push(@informe,$tex_5);<br>            $tex_6 = $n6-&gt;get_text();<br>            push(@informe,$tex_6);<br>            $tex_7 = $n7-&gt;get_text();<br>
            push(@informe,$tex_7);<br>            $tex_8 = $n8-&gt;get_text();<br>            push(@informe,$tex_8);<br>            $tex_9 = $n9-&gt;get_text();<br>            push(@informe,$tex_9);    <br>            $tex_10 = $n10-&gt;get_text();<br>
            push(@informe,$tex_10);<br>            $tex_11 = $n11-&gt;get_text();<br>            push(@informe,$tex_11);<br>            $tex_12 = $n12-&gt;get_text();<br>            push(@informe,$tex_12);<br>            $tex_13 = $n13-&gt;get_text();<br>
            push(@informe,$tex_13);<br>            $tex_14 = $n14-&gt;get_text();<br>            push(@informe,$tex_14);<br>            $tex_15 = $n15-&gt;get_text();<br>            push(@informe,$tex_15);<br>            $tex_16 = $n16-&gt;get_text();<br>
            push(@informe,$tex_16);<br>        }    <br>    return $w;<br>}<br>sub datos_sistema{<br>    my $num=@_;<br>    if ($num != 0){<br>        my $pc1 = $pci-&gt;get_active;    <br>        if ($pc1 == 1) {<br>            push (@informe,&quot;----- Dispositivos PCI -----\n&quot;);<br>
            my @pci = qx(lspci);<br>            push(@informe,@pci);<br>        <br>        }<br>        my $usb1 = $usb-&gt;get_active;<br>        if ($usb1==1){<br>            push (@informe,&quot;----- Dispositivos USB -----\n&quot;);<br>
            my @usb = qx(lsusb);<br>            push(@informe,@usb);<br>            <br>        }<br>        my $dpkg1 = $dpkg-&gt;get_active;<br>        if($dpkg1==1){<br>            push (@informe,&quot;----- dpkg.log -----\n&quot;);<br>
            my @dpkg = qx(cat /var/log/dpkg.log);<br>            push(@informe,@dpkg);<br>            <br>        }<br>        my $term1 = $term-&gt;get_active;<br>        if($term1==1){<br>            push (@informe,&quot;----- term.log -----\n&quot;);<br>
            my @term = qx(cat /var/log/apt/term.log);<br>            push(@informe,@term);            <br>        }    <br>    }            <br>}<br>sub titulo_autor{<br>    my ($t_titulo1,$t_autor1)=@_;<br>    $Eprueba-&gt;set_markup(&quot;$t_titulo1,$t_autor1&quot;);<br>
        my $w;            <br>            if ($t_titulo1 eq &quot;&quot;){<br>                my $w=1;<br>                $tit_aut-&gt;set_markup(&quot;----- SIN TITULO PARA LA NOTA: Por favor es necesario un Titulo-----\n&quot;);                <br>
            }else{<br>                my $w=0;<br>                push (@informe,&quot;----- TITULO USUARIO -----\n&quot;);            <br>                $tit_aut-&gt;set_markup(&quot;&quot;);<br>                push(@informe,$t_titulo1);                <br>
            }            <br>            if ($t_autor1 eq &quot;&quot;){<br>                my $w=1;<br>                $tit_aut-&gt;set_markup(&quot;----- SIN AUTOR PARA LA NOTA: Por favor es necesario un Autor-----\n&quot;);                <br>
            }else{<br>                my $w=0;<br>                push (@informe,&quot;----- AUTOR DE LA NOTA -----\n&quot;);            <br>                $tit_aut-&gt;set_markup(&quot;&quot;);<br>                push(@informe,$t_autor1);                <br>
            }        <br>         foreach  $i (@informe) {<br>             print &quot;$i\n&quot;;<br>         }        <br>    return $w;<br>}     <br><br><br><br><div class="gmail_quote">El 7 de agosto de 2010 14:30,  <span dir="ltr">&lt;<a href="mailto:caracas-pm-request@pm.org">caracas-pm-request@pm.org</a>&gt;</span> escribió:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Send caracas-pm mailing list submissions to<br>
        <a href="mailto:caracas-pm@pm.org">caracas-pm@pm.org</a><br>
<br>
To subscribe or unsubscribe via the World Wide Web, visit<br>
        <a href="http://mail.pm.org/mailman/listinfo/caracas-pm" target="_blank">http://mail.pm.org/mailman/listinfo/caracas-pm</a><br>
or, via email, send a message with subject or body &#39;help&#39; to<br>
        <a href="mailto:caracas-pm-request@pm.org">caracas-pm-request@pm.org</a><br>
<br>
You can reach the person managing the list at<br>
        <a href="mailto:caracas-pm-owner@pm.org">caracas-pm-owner@pm.org</a><br>
<br>
When replying, please edit your Subject line so it is more specific<br>
than &quot;Re: Contents of caracas-pm digest...&quot;<br>
<br>
<br>
Today&#39;s Topics:<br>
<br>
   1. Re: notas 2 mensaje mas liviano (Nelo R. Tovar)<br>
<br>
<br>
----------------------------------------------------------------------<br>
<br>
Message: 1<br>
Date: Fri, 6 Aug 2010 09:31:26 -0430<br>
From: &quot;Nelo R. Tovar&quot; &lt;<a href="mailto:tovar.nelo@gmail.com">tovar.nelo@gmail.com</a>&gt;<br>
Subject: Re: [caracas-pm] notas 2 mensaje mas liviano<br>
To: francisco vasquez &lt;<a href="mailto:franjvasquezg@gmail.com">franjvasquezg@gmail.com</a>&gt;<br>
Cc: <a href="mailto:caracas-pm@pm.org">caracas-pm@pm.org</a><br>
Message-ID:<br>
        &lt;AANLkTimEuRKO76uMD8j4k_5PSni9WW=<a href="mailto:sqM1DMHgSK0iq@mail.gmail.com">sqM1DMHgSK0iq@mail.gmail.com</a>&gt;<br>
Content-Type: text/plain; charset=&quot;iso-8859-1&quot;<br>
<br>
Saludos.<br>
<br>
2010/8/5 francisco vasquez &lt;<a href="mailto:franjvasquezg@gmail.com">franjvasquezg@gmail.com</a>&gt;<br>
<br>
&gt; Buenas tarde amigos :<br>
&gt;<br>
&gt; estoy migrado un programa echo python a Perl y este realiza llamados al<br>
&gt; sistema operativo deb?an en una maquina local (lspci, lsusb, etc) y adem?s<br>
&gt; permiter escribir una nota esto con el fin de ayudar a un usuario en caso<br>
&gt; que tenga problemas tecnicos en su maquina y entonces con esa informacion<br>
&gt; suministra ayudarlo toda esta informaci?n la guardo en un arreglo, mi<br>
&gt; problema compa?eros como enviar informacion en el mismo formato que lo tiene<br>
&gt; el codigo en phyton a un servidor. este es el codig? python :<br>
&gt;<br>
&gt;<br>
&gt; Supongo que quieres colocar la informaci?n en un servicio parecido a<br>
<a href="http://pastebin.org" target="_blank">pastebin.org</a>.<br>
En <a href="http://pastebin.org/450975" target="_blank">http://pastebin.org/450975</a>, tienes una versi?n en Perl del c?digo en<br>
Python que enviaste. En <a href="http://www.pastebin.org/450965" target="_blank">http://www.pastebin.org/450965</a>, esta la salida del<br>
script (y enviado con el script).<br>
F?jate en el uso de WWW::Mechanize para el env?o de los datos usando los<br>
campos del formulario que usa pastebin.<br>
<br>
--<br>
Nelo R. Tovar<br>
-------------- next part --------------<br>
An HTML attachment was scrubbed...<br>
URL: &lt;<a href="http://mail.pm.org/pipermail/caracas-pm/attachments/20100806/e4f83687/attachment-0001.html" target="_blank">http://mail.pm.org/pipermail/caracas-pm/attachments/20100806/e4f83687/attachment-0001.html</a>&gt;<br>

<br>
------------------------------<br>
<br>
_______________________________________________<br>
caracas-pm mailing list<br>
<a href="mailto:caracas-pm@pm.org">caracas-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/caracas-pm" target="_blank">http://mail.pm.org/mailman/listinfo/caracas-pm</a><br>
<br>
End of caracas-pm Digest, Vol 73, Issue 2<br>
*****************************************<br>
</blockquote></div><br>