<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="lt">
	<id>https://wiki.eofnet.lt/w//index.php?action=history&amp;feed=atom&amp;title=GSMArena_crawler</id>
	<title>GSMArena crawler - Versijų istorija</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.eofnet.lt/w//index.php?action=history&amp;feed=atom&amp;title=GSMArena_crawler"/>
	<link rel="alternate" type="text/html" href="https://wiki.eofnet.lt/w//index.php?title=GSMArena_crawler&amp;action=history"/>
	<updated>2026-04-15T15:03:37Z</updated>
	<subtitle>Šio puslapio versijų istorija projekte</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>https://wiki.eofnet.lt/w//index.php?title=GSMArena_crawler&amp;diff=8725&amp;oldid=prev</id>
		<title>80.240.8.28: Naujas puslapis: Scriptas nera uzbaigtas, tai tik tiesiog PoC kaip viskas turi veikti.  {{Template:Kuriamas}}  {{Template:FIXME}}  &lt;syntaxhighlight lang=&quot;perl&quot;&gt; #!/usr/bin/perl use LWP::UserA...</title>
		<link rel="alternate" type="text/html" href="https://wiki.eofnet.lt/w//index.php?title=GSMArena_crawler&amp;diff=8725&amp;oldid=prev"/>
		<updated>2018-08-19T12:37:10Z</updated>

		<summary type="html">&lt;p&gt;Naujas puslapis: Scriptas nera uzbaigtas, tai tik tiesiog &lt;a href=&quot;/w//index.php?title=PoC&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;PoC (puslapis neegzistuoja)&quot;&gt;PoC&lt;/a&gt; kaip viskas turi veikti.  {{Template:Kuriamas}}  {{Template:FIXME}}  &amp;lt;syntaxhighlight lang=&amp;quot;perl&amp;quot;&amp;gt; #!/usr/bin/perl use LWP::UserA...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Naujas puslapis&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Scriptas nera uzbaigtas, tai tik tiesiog [[PoC]] kaip viskas turi veikti.&lt;br /&gt;
&lt;br /&gt;
{{Template:Kuriamas}}&lt;br /&gt;
&lt;br /&gt;
{{Template:FIXME}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;perl&amp;quot;&amp;gt;&lt;br /&gt;
#!/usr/bin/perl&lt;br /&gt;
use LWP::UserAgent;&lt;br /&gt;
use HTML::TreeBuilder;&lt;br /&gt;
use Data::Printer;&lt;br /&gt;
use JSON::XS;&lt;br /&gt;
&lt;br /&gt;
binmode STDOUT, &amp;quot;:utf8&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
my %data = ();&lt;br /&gt;
&lt;br /&gt;
sub getURL {&lt;br /&gt;
    my ($url) = @_;&lt;br /&gt;
    my $ua = LWP::UserAgent-&amp;gt;new;&lt;br /&gt;
    $ua-&amp;gt;timeout(10);&lt;br /&gt;
    $ua-&amp;gt;agent($USER_AGENT);&lt;br /&gt;
    my $response = $ua-&amp;gt;get($url);&lt;br /&gt;
    return $response;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub get_brands {&lt;br /&gt;
  my $index = 0;&lt;br /&gt;
  my $response = getURL(&amp;quot;http://www.gsmarena.com/makers.php3&amp;quot;);&lt;br /&gt;
  if ($response-&amp;gt;is_success) {&lt;br /&gt;
    my $html = HTML::TreeBuilder-&amp;gt;new_from_content($response-&amp;gt;decoded_content);&lt;br /&gt;
    my @ar = $html-&amp;gt;look_down(_tag =&amp;gt; 'img', height =&amp;gt; '22', width =&amp;gt; '92', border =&amp;gt; '0');&lt;br /&gt;
    foreach my $i (@ar) {&lt;br /&gt;
      my $name = $i-&amp;gt;{alt};&lt;br /&gt;
      my $logo = $i-&amp;gt;{src};&lt;br /&gt;
      my $link = $i-&amp;gt;parent()-&amp;gt;{href};&lt;br /&gt;
      $data{$index}{name} = $i-&amp;gt;{alt};&lt;br /&gt;
      $data{$index}{logo} = $i-&amp;gt;{src};&lt;br /&gt;
      $data{$index}{link} = $i-&amp;gt;parent()-&amp;gt;{href};&lt;br /&gt;
      $index++;&lt;br /&gt;
      &lt;br /&gt;
      return if $index eq 2; # REMOVE!&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
my $mm = 0;&lt;br /&gt;
sub get_pages {&lt;br /&gt;
  foreach my $i (keys %data) {&lt;br /&gt;
   my $response = getURL(&amp;quot;http://www.gsmarena.com/$data{$i}{link}&amp;quot;);&lt;br /&gt;
    if ($response-&amp;gt;is_success) {&lt;br /&gt;
      my $html  = HTML::TreeBuilder-&amp;gt;new_from_content($response-&amp;gt;decoded_content);&lt;br /&gt;
      my $pages = $html-&amp;gt;look_down(_tag =&amp;gt; 'div', class =&amp;gt; 'nav-pages');&lt;br /&gt;
      my @pages = $pages-&amp;gt;look_down(_tag =&amp;gt; 'a');&lt;br /&gt;
      get_models($data{$i}{link}, $i);&lt;br /&gt;
      foreach my $p (@pages) {&lt;br /&gt;
        get_models($p-&amp;gt;{href}, $i);&lt;br /&gt;
        $mm = 0;&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
sub get_models {&lt;br /&gt;
  my ($URL, $ID) = @_;&lt;br /&gt;
  my $response = getURL(&amp;quot;http://www.gsmarena.com/$URL&amp;quot;);&lt;br /&gt;
  if ($response-&amp;gt;is_success) {&lt;br /&gt;
    my $html  = HTML::TreeBuilder-&amp;gt;new_from_content($response-&amp;gt;decoded_content);&lt;br /&gt;
    my $makers = $html-&amp;gt;look_down(_tag =&amp;gt; 'div', class =&amp;gt; 'makers');&lt;br /&gt;
    my @li = $makers-&amp;gt;look_down(_tag =&amp;gt; 'li');&lt;br /&gt;
    foreach my $i (@li) {&lt;br /&gt;
      my $link  = $i-&amp;gt;look_down(_tag =&amp;gt; 'a');&lt;br /&gt;
      my $img   = $i-&amp;gt;look_down(_tag =&amp;gt; 'img');&lt;br /&gt;
      my $name  = $i-&amp;gt;look_down(_tag =&amp;gt; 'span');&lt;br /&gt;
&lt;br /&gt;
      $data{$ID}{models}{$mm}{link} = $link-&amp;gt;{href};&lt;br /&gt;
      $data{$ID}{models}{$mm}{img}  = $img-&amp;gt;{src};&lt;br /&gt;
      $data{$ID}{models}{$mm}{title}  = $img-&amp;gt;{title};&lt;br /&gt;
      $data{$ID}{models}{$mm}{name} = $name-&amp;gt;as_text;&lt;br /&gt;
      &lt;br /&gt;
      &lt;br /&gt;
      get_model($link-&amp;gt;{href}, $ID, $mm);&lt;br /&gt;
      $mm++;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
# http://www.gsmarena.com/alcatel_pop_c9-5938.php&lt;br /&gt;
sub get_model {&lt;br /&gt;
  my ($URL, $M, $A) = @_;&lt;br /&gt;
  my $response = getURL(&amp;quot;http://www.gsmarena.com/$URL&amp;quot;);&lt;br /&gt;
  if ($response-&amp;gt;is_success) {&lt;br /&gt;
    my $html  = HTML::TreeBuilder-&amp;gt;new_from_content($response-&amp;gt;decoded_content);&lt;br /&gt;
    my $pretable = $html-&amp;gt;look_down(_tag =&amp;gt; 'div', id =&amp;gt; 'specs-list');&lt;br /&gt;
    my @table = $html-&amp;gt;look_down(_tag =&amp;gt; 'table', cellspacing=&amp;gt;'0');&lt;br /&gt;
    foreach my $i (@table) {&lt;br /&gt;
      my @tr = $i-&amp;gt;look_down(_tag =&amp;gt; 'tr');&lt;br /&gt;
      my $item_name = &amp;quot;test&amp;quot;;&lt;br /&gt;
      foreach my $t (@tr) {&lt;br /&gt;
        my $th = $i-&amp;gt;look_down(_tag =&amp;gt; 'th');&lt;br /&gt;
        my @td = $i-&amp;gt;look_down(_tag =&amp;gt; 'td');&lt;br /&gt;
        foreach my $d (@td) {&lt;br /&gt;
          my $foo = &amp;quot;N/A&amp;quot;;&lt;br /&gt;
          my $bar = &amp;quot;N/A&amp;quot;;&lt;br /&gt;
          &lt;br /&gt;
          my $ttl = $d-&amp;gt;look_down(_tag =&amp;gt; 'td', class =&amp;gt; 'ttl');&lt;br /&gt;
          my $nfo = $d-&amp;gt;look_down(_tag =&amp;gt; 'td', class =&amp;gt; 'nfo');&lt;br /&gt;
          &lt;br /&gt;
          $foo = $nfo-&amp;gt;as_text if $nfo;&lt;br /&gt;
          $bar = $ttl-&amp;gt;as_text if $ttl;&lt;br /&gt;
&lt;br /&gt;
          $data{$M}{models}{$A}{specs}{$th-&amp;gt;as_text}{$bar}=&amp;quot;$foo&amp;quot;;&lt;br /&gt;
        } &lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
#get_brands();&lt;br /&gt;
#get_pages();&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
get_model(&amp;quot;samsung_galaxy_on7-7679.php&amp;quot;, 0, 0); &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>80.240.8.28</name></author>
	</entry>
</feed>