Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # usr/bin/perl
- # twitter.com/lalanl
- use strict;
- use LWP::Simple;
- use HTML::Tree;
- use HTML::Entities;
- use HTML::Element;
- use HTML::TreeBuilder;
- use URI::Escape;
- my $ua = new LWP::UserAgent;
- $ua->agent("Mozilla/5.0 (Windows NT 6.1; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 ");
- my $n = 1;
- my $more = 1;
- my $date = localtime(time);
- $date = "$date -0600";
- print "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<rss xmlns:atom=\"http://www.w3.org/2005/Atom\" version=\"2.0\">\n<channel><title>Geeknights Archive</title><link>http://frontrowcrew.com/</link><description>All the episodes.</description>
- <atom:link href=\"/\" rel=\"self\"></atom:link><language>en</language><lastBuildDate>$date</lastBuildDate>";
- while($more eq 1){
- my $url = "http://www.frontrowcrew.com/geeknights?page=$n";
- my $req = new HTTP::Request 'GET' => $url;
- $req->header('Accept' => 'text/html');
- my $response = $ua->request($req);
- my $html = $response->content;
- my $tree = HTML::TreeBuilder->new_from_content($html);
- $tree->eof();
- my @episodes = $tree->find_by_attribute('class', 'episode');
- $more = 0;
- foreach my $ep (@episodes){
- my $titleLink = $ep->find_by_tag_name('h2');
- my $title = encode_entities($titleLink->as_text);
- my $downloadLink = $ep->find_by_attribute('class','mp3')->find_by_tag_name('a');
- my $link = $downloadLink->attr('href');
- if($title || $link){
- $more = 1;
- print "<item><title>$title</title>";
- print "<link>$link</link><enclosure url=\"$link\" length=\"None\" type=\"audio/mpeg\"></enclosure></item>\n";
- }
- }
- $n++;
- }
- print "</channel></rss>";
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement