Chinaunix首页 | 论坛 | 博客
  • 博客访问: 467540
  • 博文数量: 118
  • 博客积分: 4015
  • 博客等级: 上校
  • 技术积分: 1233
  • 用 户 组: 普通用户
  • 注册时间: 2010-11-24 22:11
文章分类

全部博文(118)

文章存档

2013年(5)

2011年(61)

2010年(52)

分类: WINDOWS

2011-03-05 22:15:41

写了一个Perl 脚本,要干一件羞于启齿的事情。
意思是这样的,用到了Win32::IEAutomation,首先
在调用的时候将地址传送给脚本,然后脚本打开一个浏览器代理,然后,跳转到该网页,经过若干次后,
关闭浏览器对象。下面是脚本
use Win32::IEAutomation;
my $newURL = $ARGV[0];
my $count = 100;
if(!defined($newURL)){
    print "NO NEW URL\n";
    print "USE OLD RECORD IN URLS\n";
}else{
    print "ADD THE URL TO URLS";
    open WH,">>URLS" or die "$!";
    print WH $newURL."\n";
    close WH or die "$!";
}
open RH,"URLS" or die "$!";
my @urls = ; chomp @urls;
close RH or die "$!";
my $ie = Win32::IEAutomation->new(visible => 0,maximize =>0);
for(my $time = 0; $time < $count;$time ++){
    for(my $i = 0; $i < @urls; $i ++){
         $ie->gotoURL($urls[$i]);
    }
}
$ie->closeIE;

于是我这么调用
>perl webBroser.pl
可是出现了问题,$ARGV[0]只取到&,后面的东西没有传进去。
谁的错呢?我以为是Perl ,所以查了一下,分割符,$ARGV,可是没有收获,
最后,还是导师告诉了我原因,是出在cmd上,因为cmd 命令传参数的时候
他的分隔符是&,所以遇到一个参数里面有&的情况,就要加“”,
>perl webBroser.pl ""
这么搞就对了。。。

阅读(1138) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~