2009年11月15日星期日

[PerlChina] 进行网页抓取,然后进行正则替换的时候在某一处中断

想要抓取某一个网页,然后进行一些替换操作,生成文件后以便其他页面调用。抓取都没有问题,进行写入的时候顺便进行了正则替换和转码, 抓取的内容是
utf8我要转成gb2312。然后就发现到了页面的某一行后,程序就停止了,怀疑是有特殊字符导致的,不知道应该怎么处理,有没有类似CDATA 之
类的方法呢。。
贴出代码,也请大家帮忙看看
use LWP::Simple;
use Encode;
open TARGET, ">>target.txt";
open(NEW,">union2.txt");
my $url ='http://www.hiao.com/node/hiaospace.htm';
my $list = get $url;
$list = encode("gbk", decode("utf8", $list));
if(!$list){ die "couldn't ger $url"; }
else{ print NEW $list; }
open(WE,"union2.txt");
my $i=1;
while (<WE>) {
$i++;
next if $i<32;
last if /<\/body>/;
$_=~s#\.\./#http://www\.hiao\.com/#;
next if (length($_)==1);
print TARGET $_ ;
}
print "\n";
close(NEW);
close(WE);
close(TARGET);
--~--~---------~--~----~------------~-------~--~----~
您收到此信息是由于您订阅了 Google 论坛"PerlChina Mongers 讨论组"论坛。
要在此论坛发帖,请发电子邮件到 perlchina@googlegroups.com
要退订此论坛,请发邮件至 perlchina+unsubscribe@googlegroups.com
更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛
-~----------~----~----~----~------~----~------~--~---

[PerlChina] Re: 关于在perl中用shell

PIG 有个拼写错误, 应该是 exec :-)

2009/11/16 PIG <addmyin@gmail.com>
要是不要求回来结果用exac
system的引号功能当然可用。。system("/bin/mv","xxx","yyy");

2009/11/15 Xiaojun Deng <xjdengz@gmail.com>

2009/11/15 earthminator <naziwh@163.com>:
> 大家好,
> 请问perl如何使用Linux中的shell
> 是不是用sysetm就可以?
> 比如。我用mv命令
> system (mv home/a home/export/b);把home目录下的a,移动到home/export下并改名b.
> 这样可不可以呢?
反引号``也可以。。

> >
>







--~--~---------~--~----~------------~-------~--~----~
您收到此信息是由于您订阅了 Google 论坛"PerlChina Mongers 讨论组"论坛。
 要在此论坛发帖,请发电子邮件到 perlchina@googlegroups.com
 要退订此论坛,请发邮件至 perlchina+unsubscribe@googlegroups.com
 更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛

-~----------~----~----~----~------~----~------~--~---

[PerlChina] Re: 关于在perl中用shell

 ``   最好不要用在空环境

一般要求返回值,如  my @files = `ls` ;



2009/11/16 PIG <addmyin@gmail.com>
要是不要求回来结果用exac
system的引号功能当然可用。。system("/bin/mv","xxx","yyy");

2009/11/15 Xiaojun Deng <xjdengz@gmail.com>

2009/11/15 earthminator <naziwh@163.com>:
> 大家好,
> 请问perl如何使用Linux中的shell
> 是不是用sysetm就可以?
> 比如。我用mv命令
> system (mv home/a home/export/b);把home目录下的a,移动到home/export下并改名b.
> 这样可不可以呢?
反引号``也可以。。

> >
>








--
           Yours Sincerely
                   Zeng Hong

--~--~---------~--~----~------------~-------~--~----~
您收到此信息是由于您订阅了 Google 论坛"PerlChina Mongers 讨论组"论坛。
 要在此论坛发帖,请发电子邮件到 perlchina@googlegroups.com
 要退订此论坛,请发邮件至 perlchina+unsubscribe@googlegroups.com
 更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛

-~----------~----~----~----~------~----~------~--~---

[PerlChina] Re: 关于在perl中用shell

要是不要求回来结果用exac
system的引号功能当然可用。。system("/bin/mv","xxx","yyy");

2009/11/15 Xiaojun Deng <xjdengz@gmail.com>
2009/11/15 earthminator <naziwh@163.com>:
> 大家好,
> 请问perl如何使用Linux中的shell
> 是不是用sysetm就可以?
> 比如。我用mv命令
> system (mv home/a home/export/b);把home目录下的a,移动到home/export下并改名b.
> 这样可不可以呢?
反引号``也可以。。

> >
>




--~--~---------~--~----~------------~-------~--~----~
您收到此信息是由于您订阅了 Google 论坛"PerlChina Mongers 讨论组"论坛。
 要在此论坛发帖,请发电子邮件到 perlchina@googlegroups.com
 要退订此论坛,请发邮件至 perlchina+unsubscribe@googlegroups.com
 更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛

-~----------~----~----~----~------~----~------~--~---

[PerlChina] Re: 关于在perl中用shell

2009/11/15 earthminator <naziwh@163.com>:
> 大家好,
> 请问perl如何使用Linux中的shell
> 是不是用sysetm就可以?
> 比如。我用mv命令
> system (mv home/a home/export/b);把home目录下的a,移动到home/export下并改名b.
> 这样可不可以呢?
反引号``也可以。。

> >
>

--~--~---------~--~----~------------~-------~--~----~
您收到此信息是由于您订阅了 Google 论坛"PerlChina Mongers 讨论组"论坛。
要在此论坛发帖,请发电子邮件到 perlchina@googlegroups.com
要退订此论坛,请发邮件至 perlchina+unsubscribe@googlegroups.com
更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛
-~----------~----~----~----~------~----~------~--~---

[PerlChina] Re: 关于在perl中用shell

system("mv", "home/a", "home/export/b");
先保证home/export目录存在

2009/11/15 earthminator <naziwh@163.com>
大家好,
请问perl如何使用Linux中的shell
是不是用sysetm就可以?
比如。我用mv命令
system (mv home/a home/export/b);把home目录下的a,移动到home/export下并改名b.
这样可不可以呢?




--
如果觉得无聊,您不妨访问Google Reader消遣 http://www.google.com/reader/view
要尝试黑版本Google,请访问 http://www.google.com/custom?q=&sa=Search&client=pub-4021907304270164&forid=1&channel=7519554017&ie=UTF-8&oe=UTF-8&cof=GALT%3A%23FF9900%3BGL%3A1%3BDIV%3A%230033FF%3BVLC%3ACC9900%3BAH%3Acenter%3BBGC%3A000000%3BLBGC%3A000000%3BALC%3AFFFFFF%3BLC%3AFFFFFF%3BT%3ACCCCCC%3BGFNT%3A33CC00%3BGIMP%3A33CC00%3BFORID%3A1%3B&hl=en

--~--~---------~--~----~------------~-------~--~----~
您收到此信息是由于您订阅了 Google 论坛"PerlChina Mongers 讨论组"论坛。
 要在此论坛发帖,请发电子邮件到 perlchina@googlegroups.com
 要退订此论坛,请发邮件至 perlchina+unsubscribe@googlegroups.com
 更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛

-~----------~----~----~----~------~----~------~--~---

[PerlChina] 关于在perl中用shell

大家好,
请问perl如何使用Linux中的shell
是不是用sysetm就可以?
比如。我用mv命令
system (mv home/a home/export/b);把home目录下的a,移动到home/export下并改名b.
这样可不可以呢?
--~--~---------~--~----~------------~-------~--~----~
您收到此信息是由于您订阅了 Google 论坛"PerlChina Mongers 讨论组"论坛。
要在此论坛发帖,请发电子邮件到 perlchina@googlegroups.com
要退订此论坛,请发邮件至 perlchina+unsubscribe@googlegroups.com
更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛
-~----------~----~----~----~------~----~------~--~---