<div>A parte do sokets funciona normalmente e pagina e baixana no diretorio passado como parametro, o que nao estou conseguindo fazer e converter em PDF, as bibliotcas a prinipio foram comatadas propositalemente.</div>
<div>&nbsp;</div>
<div>Nao posso fazer vams programas tem que ser feito tueo em um unico codigo..</div>
<div>&nbsp;</div>
<div>abaixo uma nova parte que aumentei no meu codigo pra fazer a conversao para txt mas tb nao esta funcionando. Poderia me dar uma maozinha ???</div>
<div>&nbsp;</div>
<div>Obrigadoooo</div>
<div>&nbsp;</div>
<div>&nbsp;</div>
<div>Carlos Silva</div>
<div>&nbsp;</div>
<div>
<p>#!/usr/bin/perl</p>
<p>use IO::Socket;<br>#use PDF::FromHTML;<br>#use HTML::Parse;<br>#use PDF::Template;<br>#use HTML::Tagset;<br>#use PDF::Writer;&nbsp;<br>#use HTML::TreeBuilder;</p>
<p><br>$count = 0;<br>$TotalParametros = 0;<br>$Site = &quot;<a href="http://www.faqs.org/">www.faqs.org</a>&quot;;<br>$HomeUsuario = &quot;/home/vt_integrada_perl&quot;; #diretorio onde vai ser baixado o arquivo HTML<br>
$NovoDir;<br>mkdir &quot;/home/vt_integrada_perl&quot;; #cria diretorio home/vt_integrada_perl onde vai ser baixado as paginas HTML<br>foreach $arg(@ARGV) {<br>&nbsp;&nbsp; $count++;<br>}<br>if($count==0){<br>&nbsp;&nbsp; printf(&quot;Digite o nome do script e o numero das RFC separadas por espaco\n&quot;);
<br>}<br>else{<br>&nbsp;&nbsp; $TotalParametros = $count;<br>}</p>
<p>for($count=0;$count&lt;$TotalParametros;$count++){<br>&nbsp;&nbsp; $ListaDownloads[$count] = &quot;/rfcs/rfc&quot; . $ARGV[$count] . &quot;.html&quot;;<br>&nbsp;&nbsp; $NovoDir = $HomeUsuario . &quot;/&quot; . $ARGV[$count];<br>&nbsp;&nbsp; $NovoArquivo = $NovoDir . &quot;/&quot; . $ARGV[$count] . &quot;.html&quot;;
<br>&nbsp;&nbsp; mkdir($NovoDir);<br>&nbsp;&nbsp; &amp;BaixarPagina($ListaDownloads[$count], $NovoArquivo);<br>&nbsp;&nbsp; $ListaDownloads[$count] = &quot;/rfcs/rfc&quot; . $ARGV[$count] . &quot;.html&quot;;<br>&nbsp;&nbsp; $NovoDir = $HomeUsuario . &quot;/&quot; . $ARGV[$count];
<br>&nbsp;&nbsp; $NovoArquivo = $NovoDir . &quot;/&quot; . $ARGV[$count] . &quot;.html&quot;;<br>&nbsp;#&nbsp; &amp;convertePdf($ListaDownloads[$count], $NovoArquivo);&nbsp;<br>&nbsp;&nbsp; mkdir($NovoDir);<br>&nbsp;&nbsp; #perl -pe 's/\&lt;.+?\&gt;//g home/vt_integrada_perl/1020/1020.html;
<br>&nbsp;&nbsp; &amp;sub converte_html_txt</p>
<p><br>&nbsp;&nbsp; <br>}; </p>
<p>sub convert_html_txt&nbsp;&nbsp; converts html to txt with all characters protected<br>&nbsp;#usage:<br>&nbsp;#(cd ~/home/vt_integrada_perl/$NovoDir/$NovoArquivo ; ./converte_html_txt.pl dasherlink1.html &gt; teste.txt)<br>&nbsp;#( cd ~/website/dasher/english ; ./html2txt.pl converte_html_txt.pl &gt; 
teste.txt ) ; make dasherenglish</p>
<p>#eval &quot;\$$1=\$2&quot; while @ARGV &amp;&amp; $ARGV[0]=~ /^(\w+)=(.*)/ &amp;&amp; shift;</p>
<p>#while(&lt;&gt;){<br>&nbsp;&nbsp;&nbsp; s/\&amp;/\&amp;amp;/g; <br>&nbsp;&nbsp;&nbsp; s/\&lt;/\&amp;lt;/g;<br>&nbsp;&nbsp;&nbsp; s/\&gt;/\&amp;gt;/g;<br>&nbsp;#&nbsp;&nbsp; print;<br>#}</p>
<p><br>sub convertePdf {<br>my $HTML&nbsp; = '/home/vt_integrada_perl/$NovoDir/$NovoArquivo';<br>my $PDF&nbsp;&nbsp; = '/home/vt_integrada_perl/$NovoDir/$NovoArquivo';<br>my $FONTE = '/usr/X11R6/lib/X11/fonts/truetype/SUSESans-Roman.ttf
';</p>
<p>my $pdf = PDF::FromHTML-&gt;new( encoding =&gt; 'utf-8' );<br>&nbsp;&nbsp; $pdf-&gt;load_file($HTML);<br>&nbsp;&nbsp; $pdf-&gt;convert(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Font =&gt; $FONTE,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LineHeight =&gt; 10,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Landscape =&gt; 1,<br>&nbsp;&nbsp; );<br>
&nbsp;&nbsp; $pdf-&gt;write_file($PDF);<br>}<br>sub BaixarPagina{<br>&nbsp;&nbsp; my $enderecosite = $_[0];<br>&nbsp;&nbsp; my $nmarquivo = $_[1];<br>&nbsp;&nbsp; my $port = &quot;80&quot;;<br>&nbsp;&nbsp; my $strComando = &quot;GET $enderecosite HTTP/1.1\nHost: $Site\nUser-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:
1.7.10) Gecko/20050725\n\n&quot;;<br>&nbsp;&nbsp; <br>&nbsp;&nbsp; print $strComando;<br>&nbsp;&nbsp; my $sock = new IO::Socket::INET (<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PeerAddr =&gt; $Site,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PeerPort =&gt; $port,<br>&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Proto =&gt; 'tcp',
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; );<br>&nbsp;&nbsp; die &quot;Nao foi possivel conectar... $Site&quot; unless $sock;<br>&nbsp;&nbsp; $sock-&gt;autoflush(1);</p>
<p>&nbsp;&nbsp; print $sock $strComando;</p>
<p>;</p>
<p>&nbsp;&nbsp; my $buf=&quot;&quot;;<br>&nbsp;&nbsp; while($line=&lt;$sock&gt;){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $buf.=$line;<br>&nbsp;&nbsp; }</p>
<p>&nbsp; &nbsp;<br>&nbsp;<br>&nbsp;&nbsp; close($sock);</p>
<p>#&nbsp;&nbsp; print $buf;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exibe o conteudo html<br>&nbsp;&nbsp; open(SITE,&quot;&gt;&gt;$nmarquivo&quot;);<br>&nbsp;&nbsp; print SITE $buf;<br>&nbsp;&nbsp; close(SITE);<br>&nbsp;&nbsp; print &quot;Gravado em $nmarquivo&quot;;<br>&nbsp; <br>}<br></p></div>
<div><br><br>&nbsp;</div>
<div><span class="gmail_quote">Em 08/11/05, <b class="gmail_sendername">Alceu Rodrigues de Freitas Jr.</b> &lt;<a href="mailto:glasswalk3r@yahoo.com.br">glasswalk3r@yahoo.com.br</a>&gt; escreveu:</span>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">Carlos Silva wrote:<br><br>&gt; Prezaados colegas,<br>&gt;<br>&gt; Estou tentando fazer uma conversao de arquivo HTMl para PDF e não
<br>&gt; estou conseguindo.<br>&gt;<br>&gt; Esse script baixa uma ou mais paginas HTML passadas como parametro e<br>&gt; depois a&nbsp;&nbsp;transforma em PDF mas a conversão nao esta funcionando .<br>&gt;<br>Você deixou alguns módulos comentados no seu código enviado... isso foi
<br>proposital?<br>Você está usando sockets para pegar uma página... já tentou fazer a<br>conversão local? Digo, antes de sair usando sockets, localmente seu<br>script funciona?<br>Tente fazer seu programa por partes, não de uma vez só. A maior
<br>dificuldade que vejo em usar socket é o script pegar o documento HTML e<br>salvar no HD (ou em memória, se você tiver ela sobrando). Feito isso, o<br>restante do seu script deverá funcionar.<br>E por favor, não use IO::Socket a menos que você realmente precise... o
<br>LWP::Simple já mata seus problemas com uma facilidade muito maior.<br><br>[]'s<br>Alceu<br><br><br><br><br><br><br>_______________________________________________________<br>Yahoo! Acesso Grátis: Internet rápida e grátis.
<br>Instale o discador agora!<br><a href="http://br.acesso.yahoo.com/">http://br.acesso.yahoo.com/</a><br><br>_______________________________________________<br>Cascavel-pm mailing list<br><a href="mailto:Cascavel-pm@pm.org">
Cascavel-pm@pm.org</a><br><a href="http://mail.pm.org/mailman/listinfo/cascavel-pm">http://mail.pm.org/mailman/listinfo/cascavel-pm</a><br></blockquote></div><br>