2010年9月11日星期六

Re: [PerlChina] perl实现DNS反向解析的问题

直接tcpdump tcp port 80的话已经提取不到url了。只能提取到目标IP了。
经过改进。tcpdump udp port 53就可以了

在 2010年9月12日 下午2:01,Xiaojun Deng <xjdengz@gmail.com>写道:
这样的啊,没用过这东西,看名字还以为它只能抓 tcp 的报文分析,要经过解码才能知道相应的 http 报文内容 :)
既能抓到 http 报文的话,请求头里面就有 URL 信息吧
2010/9/12 王小默 <wangxiaomo521@gmail.com>:
>
> 能行啊 为啥不能了?tcpdump挺强大的。再加上perl的快速开发。很强大
>
> 在 2010年9月12日 上午11:29,Xiaojun Deng <xjdengz@gmail.com>写道:
>>
>> tcpdump 能抓到 http 的报文吗
>> 2010/9/12 Kaiwang Chen <kaiwang.chen@gmail.com>:
>> > 找HTTP 协议里的 Host: 头
>> >
>> > 在 2010年9月11日 下午3:51,王小默 <wangxiaomo521@gmail.com> 写道:
>> >>
>> >> 这个确实是个问题。不过就这个项目来说我就想到了这种方法。tcpdump抓取出来的数据只能得到你访问目标IP。很无语。大家有什么好的方法吗?求助啊。
>> >> 还有 。就我说的知道目标IP然后得到域名的perl怎么写。可以通过LWP实现吗?就算不现实。我也想知道下怎么实现。呵呵。
>> >>
>> >> 在 2010年9月11日 下午3:41,万朝伟 <wanmyome@gmail.com>写道:
>> >>>
>> >>>
>> >>>
>> >>> 就这个需求来说我觉得你的做法可能不是最优的,先不说大部分ip没有做反解,就算是按要求做了反解也是一个ip对应一个域名,而实际上一个ip上能绑定n多的域名,做n多的网站
>> >>>
>> >>> 在 2010年9月11日 下午3:28,王小默 <wangxiaomo521@gmail.com>写道:
>> >>>>
>> >>>> 我是个新手 有些问题想求助于大家.
>> >>>>
>> >>>> 知道目标主机的IP 想要得到目标IP的域名 有什么好的方法 或者 好的模块没 ?
>> >>>>
>> >>>>
>> >>>> 备注:
>> >>>>
>> >>>> 我在做一个监听局域网内喜好网站的汇总工作。
>> >>>>
>> >>>> 我通过libpcap+tcpdump对局域网内进行监听。tcpdump tcp port 80 and src host 我的IP -nn
>> >>>> -t
>> >>>> -i eth0 -l >tcp.sample
>> >>>> 写了一个基本的perl脚本提取出了局域网内80端口访问的主机IP 现在我需要把得到的IP转换为域名。不知道有什么好的方法没`。
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>> --
>> >>>>                         Love From
>> >>>>                                  王小默
>> >>>>
>> >>>> --
>> >>>> 您收到此邮件是因为您订阅了 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 访问此网上论坛。
>> >>
>> >>
>> >>
>> >> --
>> >>                         Love From
>> >>                                  王小默
>> >>
>> >> --
>> >> 您收到此邮件是因为您订阅了 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 访问此网上论坛。
>>
>
>
>
> --
>                         Love From
>                                  王小默
>
> --
> 您收到此邮件是因为您订阅了 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 访问此网上论坛。




--
                        Love From
                                 王小默

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

Re: [PerlChina] perl实现DNS反向解析的问题

这样的啊,没用过这东西,看名字还以为它只能抓 tcp 的报文分析,要经过解码才能知道相应的 http 报文内容 :)
既能抓到 http 报文的话,请求头里面就有 URL 信息吧
2010/9/12 王小默 <wangxiaomo521@gmail.com>:
>
> 能行啊 为啥不能了?tcpdump挺强大的。再加上perl的快速开发。很强大
>
> 在 2010年9月12日 上午11:29,Xiaojun Deng <xjdengz@gmail.com>写道:
>>
>> tcpdump 能抓到 http 的报文吗
>> 2010/9/12 Kaiwang Chen <kaiwang.chen@gmail.com>:
>> > 找HTTP 协议里的 Host: 头
>> >
>> > 在 2010年9月11日 下午3:51,王小默 <wangxiaomo521@gmail.com> 写道:
>> >>
>> >> 这个确实是个问题。不过就这个项目来说我就想到了这种方法。tcpdump抓取出来的数据只能得到你访问目标IP。很无语。大家有什么好的方法吗?求助啊。
>> >> 还有 。就我说的知道目标IP然后得到域名的perl怎么写。可以通过LWP实现吗?就算不现实。我也想知道下怎么实现。呵呵。
>> >>
>> >> 在 2010年9月11日 下午3:41,万朝伟 <wanmyome@gmail.com>写道:
>> >>>
>> >>>
>> >>>
>> >>> 就这个需求来说我觉得你的做法可能不是最优的,先不说大部分ip没有做反解,就算是按要求做了反解也是一个ip对应一个域名,而实际上一个ip上能绑定n多的域名,做n多的网站
>> >>>
>> >>> 在 2010年9月11日 下午3:28,王小默 <wangxiaomo521@gmail.com>写道:
>> >>>>
>> >>>> 我是个新手 有些问题想求助于大家.
>> >>>>
>> >>>> 知道目标主机的IP 想要得到目标IP的域名 有什么好的方法 或者 好的模块没 ?
>> >>>>
>> >>>>
>> >>>> 备注:
>> >>>>
>> >>>> 我在做一个监听局域网内喜好网站的汇总工作。
>> >>>>
>> >>>> 我通过libpcap+tcpdump对局域网内进行监听。tcpdump tcp port 80 and src host 我的IP -nn
>> >>>> -t
>> >>>> -i eth0 -l >tcp.sample
>> >>>> 写了一个基本的perl脚本提取出了局域网内80端口访问的主机IP 现在我需要把得到的IP转换为域名。不知道有什么好的方法没`。
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>> --
>> >>>> Love From
>> >>>> 王小默
>> >>>>
>> >>>> --
>> >>>> 您收到此邮件是因为您订阅了 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 访问此网上论坛。
>> >>
>> >>
>> >>
>> >> --
>> >> Love From
>> >> 王小默
>> >>
>> >> --
>> >> 您收到此邮件是因为您订阅了 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 访问此网上论坛。
>>
>
>
>
> --
> Love From
> 王小默
>
> --
> 您收到此邮件是因为您订阅了 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实现DNS反向解析的问题


能行啊 为啥不能了?tcpdump挺强大的。再加上perl的快速开发。很强大

在 2010年9月12日 上午11:29,Xiaojun Deng <xjdengz@gmail.com>写道:
tcpdump 能抓到 http 的报文吗
2010/9/12 Kaiwang Chen <kaiwang.chen@gmail.com>:
> 找HTTP 协议里的 Host: 头
>
> 在 2010年9月11日 下午3:51,王小默 <wangxiaomo521@gmail.com> 写道:
>> 这个确实是个问题。不过就这个项目来说我就想到了这种方法。tcpdump抓取出来的数据只能得到你访问目标IP。很无语。大家有什么好的方法吗?求助啊。
>> 还有 。就我说的知道目标IP然后得到域名的perl怎么写。可以通过LWP实现吗?就算不现实。我也想知道下怎么实现。呵呵。
>>
>> 在 2010年9月11日 下午3:41,万朝伟 <wanmyome@gmail.com>写道:
>>>
>>>
>>> 就这个需求来说我觉得你的做法可能不是最优的,先不说大部分ip没有做反解,就算是按要求做了反解也是一个ip对应一个域名,而实际上一个ip上能绑定n多的域名,做n多的网站
>>>
>>> 在 2010年9月11日 下午3:28,王小默 <wangxiaomo521@gmail.com>写道:
>>>>
>>>> 我是个新手 有些问题想求助于大家.
>>>>
>>>> 知道目标主机的IP 想要得到目标IP的域名 有什么好的方法 或者 好的模块没 ?
>>>>
>>>>
>>>> 备注:
>>>>
>>>> 我在做一个监听局域网内喜好网站的汇总工作。
>>>>
>>>> 我通过libpcap+tcpdump对局域网内进行监听。tcpdump tcp port 80 and src host 我的IP -nn -t
>>>> -i eth0 -l >tcp.sample
>>>> 写了一个基本的perl脚本提取出了局域网内80端口访问的主机IP 现在我需要把得到的IP转换为域名。不知道有什么好的方法没`。
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>>                         Love From
>>>>                                  王小默
>>>>
>>>> --
>>>> 您收到此邮件是因为您订阅了 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 访问此网上论坛。
>>
>>
>>
>> --
>>                         Love From
>>                                  王小默
>>
>> --
>> 您收到此邮件是因为您订阅了 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 访问此网上论坛。




--
                        Love From
                                 王小默

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

Re: [PerlChina] perl实现DNS反向解析的问题

tcpdump 能抓到 http 的报文吗
2010/9/12 Kaiwang Chen <kaiwang.chen@gmail.com>:
> 找HTTP 协议里的 Host: 头
>
> 在 2010年9月11日 下午3:51,王小默 <wangxiaomo521@gmail.com> 写道:
>> 这个确实是个问题。不过就这个项目来说我就想到了这种方法。tcpdump抓取出来的数据只能得到你访问目标IP。很无语。大家有什么好的方法吗?求助啊。
>> 还有 。就我说的知道目标IP然后得到域名的perl怎么写。可以通过LWP实现吗?就算不现实。我也想知道下怎么实现。呵呵。
>>
>> 在 2010年9月11日 下午3:41,万朝伟 <wanmyome@gmail.com>写道:
>>>
>>>
>>> 就这个需求来说我觉得你的做法可能不是最优的,先不说大部分ip没有做反解,就算是按要求做了反解也是一个ip对应一个域名,而实际上一个ip上能绑定n多的域名,做n多的网站
>>>
>>> 在 2010年9月11日 下午3:28,王小默 <wangxiaomo521@gmail.com>写道:
>>>>
>>>> 我是个新手 有些问题想求助于大家.
>>>>
>>>> 知道目标主机的IP 想要得到目标IP的域名 有什么好的方法 或者 好的模块没 ?
>>>>
>>>>
>>>> 备注:
>>>>
>>>> 我在做一个监听局域网内喜好网站的汇总工作。
>>>>
>>>> 我通过libpcap+tcpdump对局域网内进行监听。tcpdump tcp port 80 and src host 我的IP -nn -t
>>>> -i eth0 -l >tcp.sample
>>>> 写了一个基本的perl脚本提取出了局域网内80端口访问的主机IP 现在我需要把得到的IP转换为域名。不知道有什么好的方法没`。
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Love From
>>>> 王小默
>>>>
>>>> --
>>>> 您收到此邮件是因为您订阅了 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 访问此网上论坛。
>>
>>
>>
>> --
>> Love From
>> 王小默
>>
>> --
>> 您收到此邮件是因为您订阅了 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] perl实现DNS反向解析的问题

找HTTP 协议里的 Host: 头

在 2010年9月11日 下午3:51,王小默 <wangxiaomo521@gmail.com> 写道:
> 这个确实是个问题。不过就这个项目来说我就想到了这种方法。tcpdump抓取出来的数据只能得到你访问目标IP。很无语。大家有什么好的方法吗?求助啊。
> 还有 。就我说的知道目标IP然后得到域名的perl怎么写。可以通过LWP实现吗?就算不现实。我也想知道下怎么实现。呵呵。
>
> 在 2010年9月11日 下午3:41,万朝伟 <wanmyome@gmail.com>写道:
>>
>>
>> 就这个需求来说我觉得你的做法可能不是最优的,先不说大部分ip没有做反解,就算是按要求做了反解也是一个ip对应一个域名,而实际上一个ip上能绑定n多的域名,做n多的网站
>>
>> 在 2010年9月11日 下午3:28,王小默 <wangxiaomo521@gmail.com>写道:
>>>
>>> 我是个新手 有些问题想求助于大家.
>>>
>>> 知道目标主机的IP 想要得到目标IP的域名 有什么好的方法 或者 好的模块没 ?
>>>
>>>
>>> 备注:
>>>
>>> 我在做一个监听局域网内喜好网站的汇总工作。
>>>
>>> 我通过libpcap+tcpdump对局域网内进行监听。tcpdump tcp port 80 and src host 我的IP -nn -t
>>> -i eth0 -l >tcp.sample
>>> 写了一个基本的perl脚本提取出了局域网内80端口访问的主机IP 现在我需要把得到的IP转换为域名。不知道有什么好的方法没`。
>>>
>>>
>>>
>>>
>>> --
>>> Love From
>>> 王小默
>>>
>>> --
>>> 您收到此邮件是因为您订阅了 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 访问此网上论坛。
>
>
>
> --
> Love From
> 王小默
>
> --
> 您收到此邮件是因为您订阅了 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文件

XML 解析是有点复杂,如果想用个简单的接口, XML::Simple 不错

还是写个 XML::LibXML::SAX 的例子吧:
以下代码放在一个文件中,建议阅读 XML::SAX::Base 和 http://perl-xml.sourceforge.net/

package SAXHandler;
use Data::Dumper;
use parent 'XML::SAX::Base';

sub new { bless {tag => $_[1]}, $_[0] }

sub start_element {
my ($self, $elm) = @_;

if ($elm->{'LocalName'} eq $self->{'tag'}) {

my $attrs = $elm->{'Attributes'};

for $key (keys %{$attrs}) {
print "$attrs->{$key}{'Value'}\t" if $attrs->{$key}{'Name'} eq "ctime";
}

$self->{'output'} = 1;
}
}

sub characters {
my ($self, $char) = @_;
print "$char->{'Data'}\n" if $self->{'output'};
$self->{'output'} = 0;
}

package main;

use XML::LibXML::SAX;

my $sax = XML::LibXML::SAX->new(Handler => SAXHandler->new($ARGV[0]));
$sax->parse_string(<<XML);
<?xml version="1.0"?>
<categories>
<aaa>bbb</aaa>
<category ctime="1284224672">cat_1</category>
<category ctime="1284224676">cat_2</category>
<category ctime="1284224670">cat_8</category>
<category ctime="1284224678">cat_5</category>
</categories>

XML


要满足你的需求,基本上改动一下就好了吧, parse_string 改成 parse_file(FILENAME);


2010/9/11 cnhack TNT <cnhacktnt@gmail.com>
$parser = XML::LibXML::SAX->new();

不客气~

2010/9/11 zhang jiaqiang <zhangjiaqiang@gmail.com>

多谢cnhack TNT!

关于XML::LibXML::SAX 能多给点提示么?搞不太清楚怎么使用,文档写得好“简易”啊。

不过我试用了XML::LibXML,处理相同的文件,从90秒降到了8秒!


#!/usr/bin/perl

use strict;
use XML::LibXML;
use Benchmark;

my $start = new Benchmark;


my $file = $ARGV[0];
my $parser = XML::LibXML->new();
my $tree = $parser->parse_file($file);
my $root = $tree->getDocumentElement;
my @specEle = $root->getElementsByTagName($ARGV[1]);

foreach my $eid (@specEle) {
    my $oexid = $eid->getAttribute('id');
    print "oexid $oexid \n";
}

my $end = new Benchmark;
my $diff = timediff( $end, $start );
# report
print "Time taken was ", timestr( $diff, 'all' ), " seconds\n";




2010/9/10 cnhack TNT <cnhacktnt@gmail.com>
用 XML::LibXML::SAX 好了


2010/9/10 ZHANG Jiaqiang A <Jiaqiang.a.Zhang@alcatel-sbell.com.cn>

请教一下,目标还比较简单,就是从xml文件中抽取某类element的某个固定的attr的值,我用perl的XML::Parser模块写了一下,耗时90秒。
 
希望能大幅度地提高一下效率,想听听大家有啥建议?
 
(试了一下XML::Twig模块,可能是我用的不得法,相同的功能用了190秒)
 
 
 
 

--
您收到此邮件是因为您订阅了 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 访问此网上论坛。


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

Re: [PerlChina] 有没有比较小的perl解析器

Hi,

http://www.activestate.com/activeperl/downloads
http://strawberryperl.com/releases.html

都有 zip 包下载,你可以去掉文档、不需要的模块以减小体积。

2010/9/10 Yuan Jiang <sleetdrop@gmail.com>:
> rt
> activeperl与strawberry都好大,有没有小点的并且是绿色的.直接解开用户就可以运行的.
>
> --
> 姜源
> Yuan Jiang
> http://blog.vetcafe.net
> http://twitter.com/sleetdrop
>
> --
> 您收到此邮件是因为您订阅了 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解析器

miniperl 是 perl 编译时创建的,最小了,不过功能欠缺,比如 crypt 函数就可能没有。

tinyperl 还可以,还有和 tinyperl 差不多的几个小项目,可以搜索一下。

2010/9/11 PIG <addmyin@gmail.com>:
> 搞个miniperl么
>
> 在 2010年9月11日 下午1:06,Yuan Jiang <sleetdrop@gmail.com> 写道:
>> 对的,就是win32下的.
>>
>> 2010/9/11 Michael Zeng <galaxy2004@gmail.com>:
>>> 你说的 是win32
>>> 下的么
>>>
>>>
>>> linux版如何
>>>
>>> 2010/9/10 Yuan Jiang <sleetdrop@gmail.com>
>>>>
>>>> rt
>>>> activeperl与strawberry都好大,有没有小点的并且是绿色的.直接解开用户就可以运行的.
>>>>
>>>> --
>>>> 姜源
>>>> Yuan Jiang
>>>> http://blog.vetcafe.net
>>>> http://twitter.com/sleetdrop
>>>>
>>>> --
>>>> 您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
>>>> 要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
>>>> 要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
>>>> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>>>>
>>>
>>>
>>>
>>> --
>>> Yours Sincerely
>>> Zeng Hong
>>>
>>> --
>>> 您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
>>> 要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
>>> 要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
>>> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>>>
>>
>>
>>
>> --
>> 姜源
>> Yuan Jiang
>> http://blog.vetcafe.net
>> http://twitter.com/sleetdrop
>>
>> --
>> 您收到此邮件是因为您订阅了 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 访问此网上论坛。
>
>

--
/* 110000011101011011010000110010111100001010111101 *\
Linxinglu(林兴陆) - Mike Lam
Mobile Phone: (+86)13501281365
E-Mail: i@lxl.cn
QQ: 28888888
ICQ: 2876829
MSN: Linxinglu@hotmail.com
Homepage: http://www.lxl.cn
\* 110000011101011011010000110010111100001010111101 */

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

Re: [PerlChina] 解析比较大的xml文件

$parser = XML::LibXML::SAX->new();

不客气~

2010/9/11 zhang jiaqiang <zhangjiaqiang@gmail.com>
多谢cnhack TNT!

关于XML::LibXML::SAX 能多给点提示么?搞不太清楚怎么使用,文档写得好“简易”啊。

不过我试用了XML::LibXML,处理相同的文件,从90秒降到了8秒!


#!/usr/bin/perl

use strict;
use XML::LibXML;
use Benchmark;

my $start = new Benchmark;


my $file = $ARGV[0];
my $parser = XML::LibXML->new();
my $tree = $parser->parse_file($file);
my $root = $tree->getDocumentElement;
my @specEle = $root->getElementsByTagName($ARGV[1]);

foreach my $eid (@specEle) {
    my $oexid = $eid->getAttribute('id');
    print "oexid $oexid \n";
}

my $end = new Benchmark;
my $diff = timediff( $end, $start );
# report
print "Time taken was ", timestr( $diff, 'all' ), " seconds\n";




2010/9/10 cnhack TNT <cnhacktnt@gmail.com>
用 XML::LibXML::SAX 好了


2010/9/10 ZHANG Jiaqiang A <Jiaqiang.a.Zhang@alcatel-sbell.com.cn>

请教一下,目标还比较简单,就是从xml文件中抽取某类element的某个固定的attr的值,我用perl的XML::Parser模块写了一下,耗时90秒。
 
希望能大幅度地提高一下效率,想听听大家有啥建议?
 
(试了一下XML::Twig模块,可能是我用的不得法,相同的功能用了190秒)
 
 
 
 

--
您收到此邮件是因为您订阅了 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 访问此网上论坛。

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

Re: [PerlChina] 有没有比较小的perl解析器

搞个miniperl么

在 2010年9月11日 下午1:06,Yuan Jiang <sleetdrop@gmail.com> 写道:
> 对的,就是win32下的.
>
> 2010/9/11 Michael Zeng <galaxy2004@gmail.com>:
>> 你说的 是win32
>> 下的么
>>
>>
>> linux版如何
>>
>> 2010/9/10 Yuan Jiang <sleetdrop@gmail.com>
>>>
>>> rt
>>> activeperl与strawberry都好大,有没有小点的并且是绿色的.直接解开用户就可以运行的.
>>>
>>> --
>>> 姜源
>>> Yuan Jiang
>>> http://blog.vetcafe.net
>>> http://twitter.com/sleetdrop
>>>
>>> --
>>> 您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
>>> 要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
>>> 要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
>>> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>>>
>>
>>
>>
>> --
>> Yours Sincerely
>> Zeng Hong
>>
>> --
>> 您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
>> 要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
>> 要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
>> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>>
>
>
>
> --
> 姜源
> Yuan Jiang
> http://blog.vetcafe.net
> http://twitter.com/sleetdrop
>
> --
> 您收到此邮件是因为您订阅了 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实现DNS反向解析的问题

这个确实是个问题。不过就这个项目来说我就想到了这种方法。tcpdump抓取出来的数据只能得到你访问目标IP。很无语。大家有什么好的方法吗?求助啊。
还有 。就我说的知道目标IP然后得到域名的perl怎么写。可以通过LWP实现吗?就算不现实。我也想知道下怎么实现。呵呵。

在 2010年9月11日 下午3:41,万朝伟 <wanmyome@gmail.com>写道:
就这个需求来说我觉得你的做法可能不是最优的,先不说大部分ip没有做反解,就算是按要求做了反解也是一个ip对应一个域名,而实际上一个ip上能绑定n多的域名,做n多的网站

在 2010年9月11日 下午3:28,王小默 <wangxiaomo521@gmail.com>写道:
我是个新手 有些问题想求助于大家.

知道目标主机的IP 想要得到目标IP的域名 有什么好的方法 或者 好的模块没 ?


备注:

我在做一个监听局域网内喜好网站的汇总工作。

我通过libpcap+tcpdump对局域网内进行监听。tcpdump tcp port 80 and src host 我的IP -nn -t -i eth0 -l >tcp.sample
写了一个基本的perl脚本提取出了局域网内80端口访问的主机IP 现在我需要把得到的IP转换为域名。不知道有什么好的方法没`。




--
                        Love From
                                 王小默

--
您收到此邮件是因为您订阅了 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 访问此网上论坛。



--
                        Love From
                                 王小默

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

Re: [PerlChina] perl实现DNS反向解析的问题

就这个需求来说我觉得你的做法可能不是最优的,先不说大部分ip没有做反解,就算是按要求做了反解也是一个ip对应一个域名,而实际上一个ip上能绑定n多的域名,做n多的网站

在 2010年9月11日 下午3:28,王小默 <wangxiaomo521@gmail.com>写道:
我是个新手 有些问题想求助于大家.

知道目标主机的IP 想要得到目标IP的域名 有什么好的方法 或者 好的模块没 ?


备注:

我在做一个监听局域网内喜好网站的汇总工作。

我通过libpcap+tcpdump对局域网内进行监听。tcpdump tcp port 80 and src host 我的IP -nn -t -i eth0 -l >tcp.sample
写了一个基本的perl脚本提取出了局域网内80端口访问的主机IP 现在我需要把得到的IP转换为域名。不知道有什么好的方法没`。




--
                        Love From
                                 王小默

--
您收到此邮件是因为您订阅了 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实现DNS反向解析的问题

我是个新手 有些问题想求助于大家.

知道目标主机的IP 想要得到目标IP的域名 有什么好的方法 或者 好的模块没 ?


备注:

我在做一个监听局域网内喜好网站的汇总工作。

我通过libpcap+tcpdump对局域网内进行监听。tcpdump tcp port 80 and src host 我的IP -nn -t -i eth0 -l >tcp.sample
写了一个基本的perl脚本提取出了局域网内80端口访问的主机IP 现在我需要把得到的IP转换为域名。不知道有什么好的方法没`。




--
                        Love From
                                 王小默

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

2010年9月10日星期五

Re: [PerlChina] 有没有比较小的perl解析器

对的,就是win32下的.

2010/9/11 Michael Zeng <galaxy2004@gmail.com>:
> 你说的 是win32
> 下的么
>
>
> linux版如何
>
> 2010/9/10 Yuan Jiang <sleetdrop@gmail.com>
>>
>> rt
>> activeperl与strawberry都好大,有没有小点的并且是绿色的.直接解开用户就可以运行的.
>>
>> --
>> 姜源
>> Yuan Jiang
>> http://blog.vetcafe.net
>> http://twitter.com/sleetdrop
>>
>> --
>> 您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
>> 要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
>> 要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
>> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>>
>
>
>
> --
> Yours Sincerely
> Zeng Hong
>
> --
> 您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
> 要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
> 要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com
> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>

--
姜源
Yuan Jiang
http://blog.vetcafe.net
http://twitter.com/sleetdrop

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

Re: [PerlChina] 有没有比较小的perl解析器

你说的  是win32
下的么
 
 
linux版如何

2010/9/10 Yuan Jiang <sleetdrop@gmail.com>
rt
activeperl与strawberry都好大,有没有小点的并且是绿色的.直接解开用户就可以运行的.

--
姜源
Yuan Jiang
http://blog.vetcafe.net
http://twitter.com/sleetdrop

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




--
            Yours Sincerely
                    Zeng Hong

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

Re: [PerlChina] 解析比较大的xml文件

多谢cnhack TNT!

关于XML::LibXML::SAX 能多给点提示么?搞不太清楚怎么使用,文档写得好“简易”啊。

不过我试用了XML::LibXML,处理相同的文件,从90秒降到了8秒!


#!/usr/bin/perl

use strict;
use XML::LibXML;
use Benchmark;

my $start = new Benchmark;


my $file = $ARGV[0];
my $parser = XML::LibXML->new();
my $tree = $parser->parse_file($file);
my $root = $tree->getDocumentElement;
my @specEle = $root->getElementsByTagName($ARGV[1]);

foreach my $eid (@specEle) {
    my $oexid = $eid->getAttribute('id');
    print "oexid $oexid \n";
}

my $end = new Benchmark;
my $diff = timediff( $end, $start );
# report
print "Time taken was ", timestr( $diff, 'all' ), " seconds\n";




2010/9/10 cnhack TNT <cnhacktnt@gmail.com>
用 XML::LibXML::SAX 好了


2010/9/10 ZHANG Jiaqiang A <Jiaqiang.a.Zhang@alcatel-sbell.com.cn>

请教一下,目标还比较简单,就是从xml文件中抽取某类element的某个固定的attr的值,我用perl的XML::Parser模块写了一下,耗时90秒。
 
希望能大幅度地提高一下效率,想听听大家有啥建议?
 
(试了一下XML::Twig模块,可能是我用的不得法,相同的功能用了190秒)
 
 
 
 

--
您收到此邮件是因为您订阅了 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] 解析比较大的xml文件

split xml + xsltproc, easy and fast.

2010/9/10 cnhack TNT <cnhacktnt@gmail.com>
用 XML::LibXML::SAX 好了


2010/9/10 ZHANG Jiaqiang A <Jiaqiang.a.Zhang@alcatel-sbell.com.cn>

请教一下,目标还比较简单,就是从xml文件中抽取某类element的某个固定的attr的值,我用perl的XML::Parser模块写了一下,耗时90秒。
 
希望能大幅度地提高一下效率,想听听大家有啥建议?
 
(试了一下XML::Twig模块,可能是我用的不得法,相同的功能用了190秒)
 
 
 
 

--
您收到此邮件是因为您订阅了 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 访问此网上论坛。



--
-ming

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

Re: [PerlChina] 解析比较大的xml文件

用 XML::LibXML::SAX 好了


2010/9/10 ZHANG Jiaqiang A <Jiaqiang.a.Zhang@alcatel-sbell.com.cn>
请教一下,目标还比较简单,就是从xml文件中抽取某类element的某个固定的attr的值,我用perl的XML::Parser模块写了一下,耗时90秒。
 
希望能大幅度地提高一下效率,想听听大家有啥建议?
 
(试了一下XML::Twig模块,可能是我用的不得法,相同的功能用了190秒)
 
 
 
 

--
您收到此邮件是因为您订阅了 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解析器

rt
activeperl与strawberry都好大,有没有小点的并且是绿色的.直接解开用户就可以运行的.

--
姜源
Yuan Jiang
http://blog.vetcafe.net
http://twitter.com/sleetdrop

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

[PerlChina] 解析比较大的xml文件

请教一下,目标还比较简单,就是从xml文件中抽取某类element的某个固定的attr的值,我用perl的XML::Parser模块写了一下,耗时90秒。
 
希望能大幅度地提高一下效率,想听听大家有啥建议?
 
(试了一下XML::Twig模块,可能是我用的不得法,相同的功能用了190秒)
 
 
 
 

Re: [PerlChina] 请教一下,又没有这样的module!

保存所有的运行环境?这不可能

2010/9/10 bob yang <learnin9@gmail.com>
1:做个flag呢?

在 2010年9月10日 上午8:46,Michael Zeng <galaxy2004@gmail.com>写道:

写文件倒是一个简单的方法


 
2010/9/8 Xiaojun Deng <xjdengz@gmail.com>

2010/9/8 亮康 <kangliang1982@gmail.com>:
> 我想让Perl脚本,运行到某一个地方调用该模块退出,并保存当时的所有运行环境,然后再次启动脚本可以使用这个模块恢复环境,继续执行退出的下一条语句。
> 不知道有没有这样的模块?
>

有些信息是内核才知道的吧,比如当前的 EIP 寄存器的信息,就是保存当前指令的。
可以把相关的统计信息写到文件中,再次启动时候初始化相关信息,然后从停掉的那条语句开始。

> --
> 您收到此邮件是因为您订阅了 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 访问此网上论坛。




--
            Yours Sincerely
                    Zeng Hong

--
您收到此邮件是因为您订阅了 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 访问此网上论坛。

2010年9月9日星期四

Re: [PerlChina] 请教一下,又没有这样的module!

1:做个flag呢?

在 2010年9月10日 上午8:46,Michael Zeng <galaxy2004@gmail.com>写道:
写文件倒是一个简单的方法


 
2010/9/8 Xiaojun Deng <xjdengz@gmail.com>

2010/9/8 亮康 <kangliang1982@gmail.com>:
> 我想让Perl脚本,运行到某一个地方调用该模块退出,并保存当时的所有运行环境,然后再次启动脚本可以使用这个模块恢复环境,继续执行退出的下一条语句。
> 不知道有没有这样的模块?
>

有些信息是内核才知道的吧,比如当前的 EIP 寄存器的信息,就是保存当前指令的。
可以把相关的统计信息写到文件中,再次启动时候初始化相关信息,然后从停掉的那条语句开始。

> --
> 您收到此邮件是因为您订阅了 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 访问此网上论坛。




--
            Yours Sincerely
                    Zeng Hong

--
您收到此邮件是因为您订阅了 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] 请教一下,又没有这样的module!

写文件倒是一个简单的方法


 
2010/9/8 Xiaojun Deng <xjdengz@gmail.com>
2010/9/8 亮康 <kangliang1982@gmail.com>:
> 我想让Perl脚本,运行到某一个地方调用该模块退出,并保存当时的所有运行环境,然后再次启动脚本可以使用这个模块恢复环境,继续执行退出的下一条语句。
> 不知道有没有这样的模块?
>

有些信息是内核才知道的吧,比如当前的 EIP 寄存器的信息,就是保存当前指令的。
可以把相关的统计信息写到文件中,再次启动时候初始化相关信息,然后从停掉的那条语句开始。

> --
> 您收到此邮件是因为您订阅了 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 访问此网上论坛。




--
            Yours Sincerely
                    Zeng Hong

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

2010年9月8日星期三

[PerlChina] Re: cpans (cpansearch) 模組搜尋工具

Updated! Thanks ! :-)

On Sep 8, 3:53 pm, "woosley. xu." <redic...@gmail.com> wrote:
> $git clone https://...@github.com/c9s/cpansearch.git
> password required
>
> should be
> git clonehttp://github.com/c9s/cpansearch.git
>
> 在 2010年9月8日 下午3:28,c9s <cornelius.h...@gmail.com>写道:
>
>
>
>
>
> > cpans (cpansearch)
>
> >http://c9s.me/cpans.html
>
> > 因�於�有 cpan shell �搜�的能力相�不便利且速度�� 因此�了 cpans �� project ��做 cpan 模�搜�的工
> > 具。
>
> > cpans �建 ncurses UI ,可使用�似 aptitude 工具的方式安�模�
>
> > cpans ���系�上所安�的 cpan shell 工具��行模�安�,
>
> > ���序� cpanm , cpanp , cpan 。
>
> > Screenshot:
>
> > link
>
> > 支援平台:
>
> > Linux , MacOS 10
>
> > 安�方式:
>
> > $ git clone https://...@github.com/c9s/cpansearch.git
> > $ cd cpansearch
> > $ make
> > $ make install
> > 使用方式:
>
> > $ cpans --nc Any::
>
> > 搜�所有 Any:: 名�的模�,��用 ncurses 介面。
>
> > $ cpans Moose::
>
> > 搜� Moose 相�模�
>
> > $ cpans -i server
>
> > 忽略大小�
>
> > $ cpans -v Moose::
>
> > verbose search
>
> > $ cpans -vv Moose::
>
> > very verbose search.
>
> > $ cpans Moose:: | cpanm
>
> > �搜��果 pipe � cpanminus 安�。
> > 作者
>
> > 林佑安 c9s ( cornelius.howlatgmail.com )
>
> > ��
>
> > 目前��皆�行於 github 上,�迎大家��, patches are welcome.
>
> >http://github.com/c9s/cpansearch
>
> > --
> > 您收到此邮件是因为您订阅了 Google 网上论坛的"PerlChina Mongers 讨论组"论坛。
> > 要向此网上论坛发帖,请发送电子邮件至 perlchina@googlegroups.com
> > 要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com<perlchina%2Bunsubscribe@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 访问此网上论坛。

[PerlChina] Re: 求教一个算法

Thanks so much everyone!

On Sep 7, 10:30 pm, Helc <crys...@gmail.com> wrote:
> #!/usr/bin/perl
> use strict;
> use warnings;
> use Data::Dumper;
>
> my %hash;
> my %line;
> while(<>){
> my @a = split;
> for (my $i=0;$i<=($#a-1);$i++) {
> $hash{$a[0]}->[$i] += ($a[($i+1)] ne 'NA') ? $a[($i+1)] : 0;
> $line{$a[0],($i+1)}++ if ($a[($i+1)] ne 'NA');
> }
>
> }
>
> for my $k (keys %hash) {
> for (my $i=0;$i<=(@{$hash{$k}}-2);$i++) {
> $hash{$k}->[$i] /= $line{$k,($i+1)};
> }}
>
> print Dumper(\%hash);
>
> 43000行,35列,试了下,4.04妙
>
> On 9月8日, 上午12时33分, chunjiang he <camel...@gmail.com> wrote:
>
>
>
> > 求教一个算法,上次问过,但是还是没有搞清楚。
>
> > 比如有这样一个矩阵:
>
> > sex 7.2 3.8 6.8 9.2 5.6
> > sex 5.4 2.3 4.6 8.9 9.0
> > sex 6.7 NA 7.8 9.0 3.1
> > goo 2.4 6.7 NA 9.0 2.1
> > goo 2.1 5.6 7.8 9.7 1.2
> > pkk 2.5 4.3 6.5 4.9 0.2
> > pkk 2.1 3.4 3.2 NA 4.6
> > pkk 3.2 5.6 6.7 9.1 2.2
> > ...
> > ...
> > ...
>
> > 这个矩阵很简单,就是有一些同名的行,现在我要做的是,把这些同名的行的数据按每一列合并起来,按什么合并,按照每一列的平均值来合并
>
> > 就是说,比如行名为sex的行,第一列数据为: 7.2, 5.4, 6.7 那么第一列的平均值就是(7.2+5.4+6.7)/3=6.4,
> > 第二列数据为3.8, 2.3, NA, 那么平均值就是 (3.8+2.3)/2=3,
> > 以此类推,得到每一列的平均值,作为最后的值,那么行名为sex的行最后就合并为:
> > sex 6.4 3 ....
>
> > 就是要写这样一个程序,原理很简单吧,但是鄙人的水平有限,写的程序效率上不去。
>
> > 我是这样写的,
>
> > 先用一个hash存下所有的行名:sex, goo, pkk.....
>
> > 然后遍历这个hash, foreach (%hash) { }
>
> > 每一次,把相同行名的行取出来放到一个数组@num中
>
> > 这个矩阵有一个值是确定的,那就是列数是确定的,所以对每一个数组@num, 我用for($i=0;$i<列数;$i++)
> > 循环,把每一列取出来,放到一个新的数组@haha中
>
> > 然后for($j=0;$j<@haha;$j++) 把@haha的平均值算出来,作为这一列的最后的值
>
> > 就是这样。。。
>
> > 程序我是写出来了,对于行数和列数都比较少的情况,程序没有什么问题。但是如果我有大量的行和列,比如有40000行,500列,这种情况下,这个程序就不是一 两天能跑完的了。我跑了三天,还没有跑完。工作情况是不允许我跑这么久的。
>
> > 恳请高手们帮忙指教。非常感谢!- Hide quoted text -
>
> - Show quoted text -

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