2011年5月21日星期六

[PerlChina] perl作版本更新的时候站中的模块如何维护

在debian上把perl从5.10更新到5.12了,然后以前cpan/cpanm装的模块都不能用了,如何让这些模块随版本更新自动关联呢
gtalk:freeespeech@gmail.com

--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com。
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

[PerlChina] Re: 用perl实现firebug的部分功能:获取页面元素(图片,CSS,JS)

我想你可以了解一下HTML::TreeBuilder

On May 19, 4:46 pm, wilson <fuwei...@gmail.com> wrote:
> 尝试用LWP,HTML::LinkExtor 可以取得在body内的一些文件(src="xxxx")
> 但是对<javascript>部分的一些内容还没有啥办法。
> 希望各位提供一些思路
> 希望实现的结果如下图:列出页面所调用的文件(下图为www.baidu.com的首页结果)

--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

2011年5月20日星期五

Re: [PerlChina] LWP::UserAgnet->get(https://...) not work through proxy

And I also have to turn off SSL verify_hostname.

LWP::UserAgent->new(ssl_opts => { verify_hostname => 0});


2011/5/20 Tiger Peng <tigerpeng2001@gmail.com>:
> Thanks for the help.
>
> After replacing strawberry perl 64 bit version with 32 bit version,
> and adding $ENV{https_proxy} = $res->proxy; The script works.
>
> There was warning when I install strawberry perl 64 bit on Windows7
> (64 bit). I just ignored it.
>
> 2011/5/17 cnhack TNT <cnhacktnt@gmail.com>:
>> You should try HTTP::ProxyPAC if you want proxy auto configuration:
>> use strict;
>> use LWP::UserAgent;
>> use Data::Dumper;
>> use HTTP::ProxyPAC;
>> my $ua=LWP::UserAgent->new();
>> my $pacFile = 'http://corppac.myclient.com/accelerated_pac_base.pac';
>> my $pac = HTTP::ProxyPAC->new($pacFile);
>> my $res = $pac->find_proxy($url);
>> $ua->proxy(['https', 'http'] => $res->proxy) if $res->proxy;
>> my $response =
>> $ua->get('https://login.yahoo.com/config/login_verify2?&.src=ym');
>> print Dumper $response;
>>
>>
>> Make sure you have IO::Socket::SSL or Net::SSL installed for HTTPS support,
>> IO::Socket::SSL is recommended.
>>
>> 2011/5/17 tiger <tigerpeng2001@gmail.com>
>>>
>>> Could anyone help on the following test script (run on strawberry
>>> perl)?
>>>
>>> It works (with $ua->proxy... commented out) when it is not behind
>>> proxy, but fails to access https pagethrough proxy (with '_msg' =>
>>> 'Bad Request'.). It is okay to access http pages. No problem for
>>> accessing https pages with MSIE and Firfox through proxy.
>>>
>>> Thanks,
>>>
>>>
>>> use strict;
>>> use LWP::UserAgent;
>>> use Data::Dumper;
>>>
>>> my $ua=LWP::UserAgent->new();
>>> $ua->proxy(['https', 'http'] => 'http://corppac.myclient.com/
>>> accelerated_pac_base.pac');
>>> my $response = $ua->get('https://login.yahoo.com/config/login_verify2?
>>> &.src=ym');
>>> #my $response = $ua->get('http://www.yahoo.com');
>>> print Dumper $response;
>>>
>>> --
>>> 您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
>>> 要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
>>> 要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
>>> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>>>
>>
>> --
>> 您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
>> 要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
>> 要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
>> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>>
>

--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

Re: [PerlChina] LWP::UserAgnet->get(https://...) not work through proxy

Thanks for the help.

After replacing strawberry perl 64 bit version with 32 bit version,
and adding $ENV{https_proxy} = $res->proxy; The script works.

There was warning when I install strawberry perl 64 bit on Windows7
(64 bit). I just ignored it.

2011/5/17 cnhack TNT <cnhacktnt@gmail.com>:
> You should try HTTP::ProxyPAC if you want proxy auto configuration:
> use strict;
> use LWP::UserAgent;
> use Data::Dumper;
> use HTTP::ProxyPAC;
> my $ua=LWP::UserAgent->new();
> my $pacFile = 'http://corppac.myclient.com/accelerated_pac_base.pac';
> my $pac = HTTP::ProxyPAC->new($pacFile);
> my $res = $pac->find_proxy($url);
> $ua->proxy(['https', 'http'] => $res->proxy) if $res->proxy;
> my $response =
> $ua->get('https://login.yahoo.com/config/login_verify2?&.src=ym');
> print Dumper $response;
>
>
> Make sure you have IO::Socket::SSL or Net::SSL installed for HTTPS support,
> IO::Socket::SSL is recommended.
>
> 2011/5/17 tiger <tigerpeng2001@gmail.com>
>>
>> Could anyone help on the following test script (run on strawberry
>> perl)?
>>
>> It works (with $ua->proxy... commented out) when it is not behind
>> proxy, but fails to access https pagethrough proxy (with '_msg' =>
>> 'Bad Request'.). It is okay to access http pages. No problem for
>> accessing https pages with MSIE and Firfox through proxy.
>>
>> Thanks,
>>
>>
>> use strict;
>> use LWP::UserAgent;
>> use Data::Dumper;
>>
>> my $ua=LWP::UserAgent->new();
>> $ua->proxy(['https', 'http'] => 'http://corppac.myclient.com/
>> accelerated_pac_base.pac');
>> my $response = $ua->get('https://login.yahoo.com/config/login_verify2?
>> &.src=ym');
>> #my $response = $ua->get('http://www.yahoo.com');
>> print Dumper $response;
>>
>> --
>> 您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
>> 要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
>> 要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
>> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>>
>
> --
> 您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
> 要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
> 要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>

--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

[PerlChina] Re: 用perl实现firebug的部分功能:获取页面元素(图片,CSS,JS)

use WWW::Mechanize
也可以提取一些吧
Xpath。。。

On 5月19日, 上午6时36分, wilson <fuwei...@gmail.com> wrote:
> 问题是图中的i2.png, arr.gif是写在<script> </script>段落中
>
> 2011/5/19 金玉玮 <aujade2...@gmail.com>
>
>
>
>
>
>
>
>
>
> > 俺也是刚学perl,我个人觉得你可以正则获取 src="xxx.yy" 然后根据yy判断文件类型。
>
> > 在 2011年5月19日 下午5:38,wilson <fuwei...@gmail.com>写道:
>
> >> 杯具,copy习惯了
> >> 源码目前都是改的cpan上的列子。
> >> 刚开始用Perl尝试写东西,所以很多时候都摸瞎中
>
> >> 图在这里
> >> [image: firebug.png]
>
> >> 2011/5/19 wilson <fuwei...@gmail.com>
>
> >>> 尝试用LWP,HTML::LinkExtor 可以取得在body内的一些文件(src="xxxx")
> >>> 但是对<javascript>部分的一些内容还没有啥办法。
> >>> 希望各位提供一些思路
> >>> 希望实现的结果如下图:列出页面所调用的文件(下图为www.baidu.com的首页结果)
>
> >> --
> >> 您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
> >> 要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
> >> 要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
> >> 若有更多问题,请通过http://groups.google.com/group/perlchina?hl=zh-CN访问此网上论坛。
>
> > --
> > 您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
> > 要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
> > 要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
> > 若有更多问题,请通过http://groups.google.com/group/perlchina?hl=zh-CN访问此网上论坛。
>
> --
> 伏伟任
> Wilson.Fu
>
> firebug.png
> 29K查看下载

--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

2011年5月19日星期四

Re: [PerlChina] 用perl实现firebug的部分功能:获取页面元素(图片,CSS,JS)

问题是图中的i2.png, arr.gif是写在<script> </script>段落中

2011/5/19 金玉玮 <aujade2009@gmail.com>
俺也是刚学perl,我个人觉得你可以正则获取 src="xxx.yy" 然后根据yy判断文件类型。

在 2011年5月19日 下午5:38,wilson <fuweiren@gmail.com>写道:

杯具,copy习惯了
源码目前都是改的cpan上的列子。
刚开始用Perl尝试写东西,所以很多时候都摸瞎中

图在这里
firebug.png


2011/5/19 wilson <fuweiren@gmail.com>
尝试用LWP,HTML::LinkExtor 可以取得在body内的一些文件(src="xxxx")
但是对<javascript>部分的一些内容还没有啥办法。
希望各位提供一些思路
希望实现的结果如下图:列出页面所调用的文件(下图为www.baidu.com的首页结果)






--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。



--
伏伟任
Wilson.Fu

--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com。
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

Re: [PerlChina] 用perl实现firebug的部分功能:获取页面元素(图片,CSS,JS)

俺也是刚学perl,我个人觉得你可以正则获取 src="xxx.yy" 然后根据yy判断文件类型。

在 2011年5月19日 下午5:38,wilson <fuweiren@gmail.com>写道:

杯具,copy习惯了
源码目前都是改的cpan上的列子。
刚开始用Perl尝试写东西,所以很多时候都摸瞎中

图在这里
firebug.png


2011/5/19 wilson <fuweiren@gmail.com>
尝试用LWP,HTML::LinkExtor 可以取得在body内的一些文件(src="xxxx")
但是对<javascript>部分的一些内容还没有啥办法。
希望各位提供一些思路
希望实现的结果如下图:列出页面所调用的文件(下图为www.baidu.com的首页结果)






--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com。
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

Re: [PerlChina] 用perl实现firebug的部分功能:获取页面元素(图片,CSS,JS)


杯具,copy习惯了
源码目前都是改的cpan上的列子。
刚开始用Perl尝试写东西,所以很多时候都摸瞎中

图在这里
firebug.png

2011/5/19 wilson <fuweiren@gmail.com>
尝试用LWP,HTML::LinkExtor 可以取得在body内的一些文件(src="xxxx")
但是对<javascript>部分的一些内容还没有啥办法。
希望各位提供一些思路
希望实现的结果如下图:列出页面所调用的文件(下图为www.baidu.com的首页结果)






--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com。
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

Re: [PerlChina] 用perl实现firebug的部分功能:获取页面元素(图片,CSS,JS)

图呢,哈哈。能否把源码发下,共同学习下啦

在 2011年5月19日 下午4:46,wilson <fuweiren@gmail.com>写道:
尝试用LWP,HTML::LinkExtor 可以取得在body内的一些文件(src="xxxx")
但是对<javascript>部分的一些内容还没有啥办法。
希望各位提供一些思路
希望实现的结果如下图:列出页面所调用的文件(下图为www.baidu.com的首页结果)



--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com。
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

[PerlChina] 用perl实现firebug的部分功能:获取页面元素(图片,CSS,JS)

尝试用LWP,HTML::LinkExtor 可以取得在body内的一些文件(src="xxxx")
但是对<javascript>部分的一些内容还没有啥办法。
希望各位提供一些思路
希望实现的结果如下图:列出页面所调用的文件(下图为www.baidu.com的首页结果)



--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com。
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

2011年5月18日星期三

Re: [PerlChina] eclipse+EPIC调试perl,变量名称没法正常显示

你用komodo多好啊



在 2011-5-19,2:35,樊丽科 <flike0612@126.com> 写道:

今天看到网上关于perl开发环境的文章,自己整合起来看看,结果以失败告终,如果有知道是怎么回事儿的,烦请告知。
 
 
我的环境:
1、windows 7;
2、下载Eclipse Classic 3.6.2,安装,未见问题;
      http://www.eclipse.org/downloads/
3、下载EPIC,安装,未见问题;
4、通过PPM GUI安装PadWalker,提示成功;
 
通过上面几步后,理论上在DEBUG perl程序的时候,应该能够追踪变量的值,但是,在变量区只显示如下变量信息,而没有本地变量信息
$^RE_TRIE_MAXBUF 65536 
 
我的测试程序非常简单
my $a=1;
my $b=2;
my $c=$a+$b;
print $c;
 
关于变量区的开关,我都尝试过了。各位如果谁碰到了此类问题,不吝赐教。
 

 
--
 


--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

[PerlChina] eclipse+EPIC调试perl,变量名称没法正常显示

今天看到网上关于perl开发环境的文章,自己整合起来看看,结果以失败告终,如果有知道是怎么回事儿的,烦请告知。
 
 
我的环境:
1、windows 7;
2、下载Eclipse Classic 3.6.2,安装,未见问题;
      http://www.eclipse.org/downloads/
3、下载EPIC,安装,未见问题;
4、通过PPM GUI安装PadWalker,提示成功;
 
通过上面几步后,理论上在DEBUG perl程序的时候,应该能够追踪变量的值,但是,在变量区只显示如下变量信息,而没有本地变量信息
$^RE_TRIE_MAXBUF 65536 
 
我的测试程序非常简单
my $a=1;
my $b=2;
my $c=$a+$b;
print $c;
 
关于变量区的开关,我都尝试过了。各位如果谁碰到了此类问题,不吝赐教。
 

 
--
 


--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com。
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

2011年5月17日星期二

Re: [PerlChina] 请教一个XML处理相关的问题

你只需要读入这两个文件,根据这两个文件的内容生成 hash 结构,然后交给 XML::Simple 的 XMLout 来帮你生成最终的 XML 文件,或者你手工生成也可以(没 XML::Simple 方便),比如根据你的例子,我可以给出这样的例子:

use XML::Simple;

my $hashref = {
    Group => {
        ID        => "U",
        TYPE      => "ROOT",
        SchoolRef => [ { ID => "SCHOOL01" }, { ID => "SCHOOL02" }, { ID => "SCHOOL03" } ],
    },
};

$xml = XMLout($hashref, RootName => undef);
print $xml;

结果输出的是:

  <Group ID="U" TYPE="ROOT">
    <SchoolRef ID="SCHOOL01" />
    <SchoolRef ID="SCHOOL02" />
    <SchoolRef ID="SCHOOL03" />
  </Group>

你可以将 file1.csv 的内容当作一棵树,然后写代码构造上面例子中的 hashref 就好了。



2011/5/18 许高飞 <flyhighxu@gmail.com>
大家好!

遇到一个头疼的问题,特来请教大家。
file1.txt表示一个大学U的院系班级层次结构,
U下面有SCHOOL01等院,院下面有系,系下面是班级(也有一些班级的上一级就直接是院);
file2.txt是学生的学号、姓名、班级、成绩。
需要从这两个文件读取信息,并输出成XML文件。

file1.csv:
ID,PARENTID
U,ROOT
SCHOOL01,U
SCHOOL02,U
SCHOOL03,U
DEPT01,SCHOOL01
CLASS01,DEPT01
CLASS02,DEPT01
CLASS03,DEPT01
DEPT02,SCHOOL02,
CLASS04,DEPT02
DEPT03,SCHOOL02
CLASS05,DEPT03
DEPT04,SCHOOL02
CLASS06,DEPT04
CLASS07,SCHOOL03
……

file2.csv:
ID,NAME,CLASS,GPA
pb001,Mike,CLASS01,3.70
pb002,Jim,CLASS01,3.92
pb003,Lisa,CLASS02,3.88
pb004,Look,CLASS03,4.05
……

file1.txt表示一个大学U的院系班级层次结构,
U下面有SCHOOL01等院,院下面有系,系下面是班级(也有一些班级的上一级就直接是院);
file2.txt是学生的学号、姓名、班级、成绩。
需要从这两个文件读取信息,并输出成类似下面这样的XML文件格式:

<Group ID="U" TYPE="ROOT">
       <SchoolRef ID="SCHOOL01"/>
       <SchoolRef ID="SCHOOL02"/>
       <SchoolRef ID="SCHOOL03"/>
……
</Group>

<Group ID="SCHOOL01" TYPE="SCHOOL">
       <DeptRef ID="DEPT01"/>
</Group>

<Group ID="DEPT01" TYPE="DEPT">
       <ClassRef ID="CLASS01"/>
</Group>

<Group ID="SCHOOL03" TYPE="SCHOOL">
       <ClassRef ID="CLASS07"/>
</Group>

<Group ID="CLASS01" TYPE="CLASS">
       <student ID="pb001" NAME="Mike" GPA="3.70"/>
       <student ID="pb002" NAME="Jim" GPA="3.92"/>
</Group>

<Group ID="CLASS02" TYPE="CLASS">
       <student ID="pb003" NAME="Lisa" GPA="3.88"/>
</Group>

<Group ID="CLASS03" TYPE="CLASS">
       <student ID="pb004" NAME="Look" GPA="4.05"/>
</Group>
……

对XML处理不熟悉,看了一下XML::Simple的用法,看得头大还是没想明白我这个问题要怎么处理?故来请教一下大家,先谢谢了。


--
您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com。
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

Re: [PerlChina] 请教一个XML处理相关的问题

if you just need write XML, you can try XML::Writer

Thanks

On 2011/5/18 12:49, 许高飞 wrote:
> 大家好!
>
> 遇到一个头疼的问题,特来请教大家。
> file1.txt表示一个大学U的院系班级层次结构,
> U下面有SCHOOL01等院,院下面有系,系下面是班级(也有一些班级的上一级就直
> 接是院);
> file2.txt是学生的学号、姓名、班级、成绩。
> 需要从这两个文件读取信息,并输出成XML文件。
>
> file1.csv:
> ID,PARENTID
> U,ROOT
> SCHOOL01,U
> SCHOOL02,U
> SCHOOL03,U
> DEPT01,SCHOOL01
> CLASS01,DEPT01
> CLASS02,DEPT01
> CLASS03,DEPT01
> DEPT02,SCHOOL02,
> CLASS04,DEPT02
> DEPT03,SCHOOL02
> CLASS05,DEPT03
> DEPT04,SCHOOL02
> CLASS06,DEPT04
> CLASS07,SCHOOL03
> ……
>
> file2.csv:
> ID,NAME,CLASS,GPA
> pb001,Mike,CLASS01,3.70
> pb002,Jim,CLASS01,3.92
> pb003,Lisa,CLASS02,3.88
> pb004,Look,CLASS03,4.05
> ……
>
> file1.txt表示一个大学U的院系班级层次结构,
> U下面有SCHOOL01等院,院下面有系,系下面是班级(也有一些班级的上一级就直
> 接是院);
> file2.txt是学生的学号、姓名、班级、成绩。
> 需要从这两个文件读取信息,并输出成类似下面这样的XML文件格式:
>
> <Group ID="U" TYPE="ROOT">
> <SchoolRef ID="SCHOOL01"/>
> <SchoolRef ID="SCHOOL02"/>
> <SchoolRef ID="SCHOOL03"/>
> ……
> </Group>
>
> <Group ID="SCHOOL01" TYPE="SCHOOL">
> <DeptRef ID="DEPT01"/>
> </Group>
>
> <Group ID="DEPT01" TYPE="DEPT">
> <ClassRef ID="CLASS01"/>
> </Group>
>
> <Group ID="SCHOOL03" TYPE="SCHOOL">
> <ClassRef ID="CLASS07"/>
> </Group>
>
> <Group ID="CLASS01" TYPE="CLASS">
> <student ID="pb001" NAME="Mike" GPA="3.70"/>
> <student ID="pb002" NAME="Jim" GPA="3.92"/>
> </Group>
>
> <Group ID="CLASS02" TYPE="CLASS">
> <student ID="pb003" NAME="Lisa" GPA="3.88"/>
> </Group>
>
> <Group ID="CLASS03" TYPE="CLASS">
> <student ID="pb004" NAME="Look" GPA="4.05"/>
> </Group>
> ……
>
> 对XML处理不熟悉,看了一下XML::Simple的用法,看得头大还是没想明白我这个
> 问题要怎么处理?故来请教一下大家,先谢谢了。
>
>
> --
> 您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"
> 论坛。
> 要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
> 要取消订阅此网上论坛,请发送电子邮件至
> perlchina+unsubscribe@googlegroups.com
> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN
> 访问此网上论坛。


--
Fayland Lam // http://www.fayland.org/

--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

[PerlChina] 请教一个XML处理相关的问题

大家好!

遇到一个头疼的问题,特来请教大家。
file1.txt表示一个大学U的院系班级层次结构,
U下面有SCHOOL01等院,院下面有系,系下面是班级(也有一些班级的上一级就直接是院);
file2.txt是学生的学号、姓名、班级、成绩。
需要从这两个文件读取信息,并输出成XML文件。

file1.csv:
ID,PARENTID
U,ROOT
SCHOOL01,U
SCHOOL02,U
SCHOOL03,U
DEPT01,SCHOOL01
CLASS01,DEPT01
CLASS02,DEPT01
CLASS03,DEPT01
DEPT02,SCHOOL02,
CLASS04,DEPT02
DEPT03,SCHOOL02
CLASS05,DEPT03
DEPT04,SCHOOL02
CLASS06,DEPT04
CLASS07,SCHOOL03
……

file2.csv:
ID,NAME,CLASS,GPA
pb001,Mike,CLASS01,3.70
pb002,Jim,CLASS01,3.92
pb003,Lisa,CLASS02,3.88
pb004,Look,CLASS03,4.05
……

file1.txt表示一个大学U的院系班级层次结构,
U下面有SCHOOL01等院,院下面有系,系下面是班级(也有一些班级的上一级就直接是院);
file2.txt是学生的学号、姓名、班级、成绩。
需要从这两个文件读取信息,并输出成类似下面这样的XML文件格式:

<Group ID="U" TYPE="ROOT">
       <SchoolRef ID="SCHOOL01"/>
       <SchoolRef ID="SCHOOL02"/>
       <SchoolRef ID="SCHOOL03"/>
……
</Group>

<Group ID="SCHOOL01" TYPE="SCHOOL">
       <DeptRef ID="DEPT01"/>
</Group>

<Group ID="DEPT01" TYPE="DEPT">
       <ClassRef ID="CLASS01"/>
</Group>

<Group ID="SCHOOL03" TYPE="SCHOOL">
       <ClassRef ID="CLASS07"/>
</Group>

<Group ID="CLASS01" TYPE="CLASS">
       <student ID="pb001" NAME="Mike" GPA="3.70"/>
       <student ID="pb002" NAME="Jim" GPA="3.92"/>
</Group>

<Group ID="CLASS02" TYPE="CLASS">
       <student ID="pb003" NAME="Lisa" GPA="3.88"/>
</Group>

<Group ID="CLASS03" TYPE="CLASS">
       <student ID="pb004" NAME="Look" GPA="4.05"/>
</Group>
……

对XML处理不熟悉,看了一下XML::Simple的用法,看得头大还是没想明白我这个问题要怎么处理?故来请教一下大家,先谢谢了。


--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com。
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

[PerlChina] what's new in perl 5.14

这个slides不错
http://blogs.perl.org/users/andrew_shitov/2011/05/whats-new-in-perl-514.html



--
Woosley.Xu



--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com。
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

2011年5月16日星期一

Re: [PerlChina] LWP::UserAgnet->get(https://...) not work through proxy

You should try HTTP::ProxyPAC if you want proxy auto configuration:

use strict;
use LWP::UserAgent;
use Data::Dumper;
use HTTP::ProxyPAC;

my $ua=LWP::UserAgent->new();

my $pac = HTTP::ProxyPAC->new($pacFile);
my $res = $pac->find_proxy($url);

$ua->proxy(['https', 'http'] => $res->proxy) if $res->proxy;

print Dumper $response;



Make sure you have IO::Socket::SSL or Net::SSL installed for HTTPS support, IO::Socket::SSL is recommended.


2011/5/17 tiger <tigerpeng2001@gmail.com>
Could anyone help on the following test script (run on strawberry
perl)?

It works (with $ua->proxy... commented out) when it is not behind
proxy, but fails to access https pagethrough proxy (with '_msg' =>
'Bad Request'.). It is okay to access http pages. No problem for
accessing https pages with MSIE and Firfox through proxy.

Thanks,


use strict;
use LWP::UserAgent;
use Data::Dumper;

my $ua=LWP::UserAgent->new();
$ua->proxy(['https', 'http'] => 'http://corppac.myclient.com/
accelerated_pac_base.pac');
my $response = $ua->get('https://login.yahoo.com/config/login_verify2?
&.src=ym'
);
#my $response = $ua->get('http://www.yahoo.com');
print Dumper $response;

--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。


--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com。
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

Re: [PerlChina] LWP::UserAgnet->get(https://...) not work through proxy

you should specify the real proxy instead of pac file. it should be a
host (with user/pass/port if needed).

Thanks

2011/5/17 tiger <tigerpeng2001@gmail.com>:
> Could anyone help on the following test script (run on strawberry
> perl)?
>
> It works (with $ua->proxy... commented out) when it is not behind
> proxy, but fails to access https pagethrough proxy (with '_msg' =>
> 'Bad Request'.). It is okay to access http pages. No problem for
> accessing https pages with MSIE and Firfox through proxy.
>
> Thanks,
>
>
> use strict;
> use LWP::UserAgent;
> use Data::Dumper;
>
> my $ua=LWP::UserAgent->new();
> $ua->proxy(['https', 'http'] => 'http://corppac.myclient.com/
> accelerated_pac_base.pac');
> my $response = $ua->get('https://login.yahoo.com/config/login_verify2?
> &.src=ym');
> #my $response = $ua->get('http://www.yahoo.com');
> print Dumper $response;
>
> --
> 您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
> 要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
> 要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>
>

--
Fayland Lam // http://www.fayland.org/

--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

[PerlChina] LWP::UserAgnet->get(https://...) not work through proxy

Could anyone help on the following test script (run on strawberry
perl)?

It works (with $ua->proxy... commented out) when it is not behind
proxy, but fails to access https pagethrough proxy (with '_msg' =>
'Bad Request'.). It is okay to access http pages. No problem for
accessing https pages with MSIE and Firfox through proxy.

Thanks,


use strict;
use LWP::UserAgent;
use Data::Dumper;

my $ua=LWP::UserAgent->new();
$ua->proxy(['https', 'http'] => 'http://corppac.myclient.com/
accelerated_pac_base.pac');
my $response = $ua->get('https://login.yahoo.com/config/login_verify2?
&.src=ym'
);
#my $response = $ua->get('http://www.yahoo.com');
print Dumper $response;

--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

2011年5月15日星期日

Re: [PerlChina] Perl 5.14.0 正式发布


woosley@woosley:~/perl5/perlbrew$perl --version

This is perl 5, version 14, subversion 0 (v5.14.0) built for i686-linux

Copyright 1987-2011, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.


我最喜欢操作hash/array引用的新特性

$perl -E '$a = [];  push $a, qw/hello Perl-5.14.0/; say "@$a"'
hello Perl-5.14.0


在 2011年5月15日 下午2:57,Robin Lee <robinlee.sysu@gmail.com>写道:
详见: http://search.cpan.org/~jesse/perl-5.14.0/pod/perldelta.pod

基本上是标题党,因为目前还没用上。看完 delta 后列两个个人比较喜欢的新特性:

1. 新的正则替换选项 /r
一直来正则替换(s///)都是直接作用于操作变量。要想原操作变量不变,只想要把替换后的结果保存要另一个变量,要这样写:
my $old = "cat";
my $new = $old;
$new =~ s/cat/dog/;

有了 /r 选项后,就可以这样写
my $old = "cat";
my $new = $old =~ s/cat/dog/r;

也即是正则替换不修改操作变量,并且把替换后的结果作为返回值。

2. package NAMCESPACE [VERSION] BLOCK
package Foo { ... } 相当于 { package Foo; ... }
package Foo 1.2 { ... } 相当于  { package Foo; $VERSION = 1.2; ... }

--
您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。




--
Woosley.Xu



--
您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com。
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。