Advertisement
Guest User

Zestaw 5

a guest
Nov 23rd, 2014
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 2.12 KB | None | 0 0
  1. #!/usr/bin/perl -w
  2.  
  3. use utf8;
  4. use LWP::Simple;
  5.  
  6. sub WyciagnijTekst{
  7.     $scalar=~ s/<script[^>]+>(.+?)<\/script>//gs;
  8.     $scalar=~ s/<[^>]+>//g;
  9.     $scalar=~ s/-->//g;
  10.     $scalar=~ s/&[^\s]+//g;
  11.     $scalar=~ s/[\s]{2,}/\n/g;
  12. }
  13.  
  14. sub NazwaFolderu(){
  15.     $nazwa_folderu=$strony[$i];
  16.     chomp($nazwa_folderu);
  17.     $nazwa_folderu=~ s/http:\/\///g;
  18.     $nazwa_folderu=~ s/\./-/g;
  19. }
  20.  
  21. $i=0;
  22. do{
  23.     print "Podaj strony do przeszukania (http://...):";
  24.     $dane=<STDIN>; 
  25.     $strony[$i]=$dane;
  26.     $i+=1;
  27. }until($dane=~ /^koniec$/);
  28.  
  29. $ostatni=@strony;
  30. delete $strony[$ostatni-1];
  31. $ostatni=@strony;
  32.  
  33. for($i=0;$i<$ostatni;$i++){
  34.     NazwaFolderu();
  35.     mkdir($nazwa_folderu, 0755) if (! -d $nazwa_folderu);
  36.     print "Utworzono folder $nazwa_folderu\n";
  37.  
  38.     $status = getstore($strony[$i], "./$nazwa_folderu/strona_glowna");
  39.     unless (is_success($status)){
  40.     die "Nie udało się przekierować kodu zrodlowego strony glownej do pliku: $strony[$i]\n ";}
  41.  
  42.     open($th,"./$nazwa_folderu/strona_glowna") or die "Nie moge otworzyc pliku dla adresu $strony[$i]!";
  43.     binmode($th, ":utf8" );
  44.     local $/=undef;
  45.     $scalar=<$th>;
  46.     close $th;
  47.  
  48.     open($th,">./$nazwa_folderu/strona_glowna") or die "Nie moge otworzyc pliku dla adresu $strony[$i]!";
  49.     binmode($th, ":utf8" );
  50.     WyciagnijTekst();
  51.     print $th $scalar;
  52.     close $th;
  53.  
  54.     open($th,'<',"./$nazwa_folderu/strona_glowna") or die "Nie moge otworzyc pliku dla adresu $strony[$i]!";
  55.     binmode($th, ":utf8" );
  56.     local $/=undef;
  57.     $tekst=<$th>;
  58.  
  59.     open($th2,'>',"./$nazwa_folderu/slowa") or die "Nie moge otworzyc pliku z slowami dla adresu $strony[$i]!";
  60.     binmode($th2, ":utf8" );
  61.  
  62.     @slowa=$tekst =~ /[^\.\-\?!,\+:;\[\]\(\)\=\'\s]+/g;
  63.     foreach $zmienna(@slowa){
  64.     print $th2 $zmienna."\n";
  65.     }
  66.  
  67.     open($th3,'>',"./$nazwa_folderu/licznik_slow") or die "Nie moge otworzyc pliku z slowami dla adresu $strony[$i]!";
  68.     binmode($th3, ":utf8" );
  69.  
  70.     foreach $zmienna(@slowa){
  71.     $licznik_powtorzen=0;
  72.     $licznik_powtorzen=$tekst=~ s/$zmienna//gi;
  73.  
  74.         if($licznik_powtorzen!=0){
  75.         print $th3 "słowo:\t".$zmienna."\t\tilość powtórzeń:\t".$licznik_powtorzen."\n";          
  76.         }
  77.     }
  78.    
  79.     close $th3;
  80.     close $th2;
  81.     close $th; 
  82. }
  83.  
  84. print "Wykonane!\n"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement