질문 : 명령 프롬프트 자체가 아닌 CSV 파일로 출력 을 인쇄 하고 싶습니다 .
다음은 perl의 코드입니다.
#!/usr/bin/perl
use strict;
use warnings;
use HTML::TokeParser::Simple;
my $url = '<some URL>';
my $parser = HTML::TokeParser::Simple->new( url => $url );
my %tags;
while ( my $tag = $parser->get_tag('input') ) {
my $id = $tag->get_attr('id'); # get id attribute value
my $value = $tag->get_attr('value'); # get value attribute value
$tags{$id} = $value;
}
for (keys %tags) {
print "$_ => $tags{$_} \n";
}
명령 프롬프트의 출력
ConnectionTime => 03:20:59:46
signalstrength => Good
ulCurrentDataRate => 2.48 Kbps
batterystatus => Fully Charged
CSV 파일의 필수 출력
ConnectionTime signalstrength ulCurrentDataRate batterystatus
03:20:59:46 Good 2.48 Kbps Fully Charged
입력 값을 배열에 저장 한 다음 파일로 인쇄합니다.
#!usr/bin/perl
use strict;
use warnings;
use HTML::TokeParser::Simple;
my $url = '<some URL>';
my $parser = HTML::TokeParser::Simple->new(url => $url);
my %tags;
while (my $tag = $parser->get_tag('input')) {
my $id=$tag->get_attr('id'); # get id attribute value
my $value = $tag->get_attr('value'); # get value attribute value
$tags{$id}=$value;
}
my @tags;
my @values;
for (keys %tags){
push (@tags, $_);
push (@values, $tags{$_});
}
open(my $OUTFILE, ">", "<outfile>" )
or die "Unable to open <outfile> for writing : $!";
print $OUTFILE join("\t",@tags)."\n";
print $OUTFILE join("\t",@values)."\n";
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다