webForumDet fria alternativet

Infoga på min hemsida från extern sida, hur gör man?

Webbutveckling

2 svar · 543 visningar · startad av richi_f

Medlem sedan apr. 2004206 inlägg
Frågan#1

Hej!

Vet inte om detta är rätt forum, flytta mig gärna annars!

Jag har hand om min förenings hemsida. Jag skulle vilja kunna hämta in vår tabell från svenskfotboll.se och intregrera den i min sida. Alltså bara tabellen.

Ungefär som tvsidorna hämtar tvprogrammen från de olika kanalernas sidor...

Går det att göra på något enkelt sätt?

Mvh,
Richard

Medlem sedan aug. 2000374 inlägg
#2

Re: Infoga på min hemsida från extern sida, hur gör man?

richi_f skrev:

[...]Jag skulle vilja kunna hämta in vår tabell från svenskfotboll.se och intregrera den i min sida. Alltså bara tabellen.

Ungefär som tvsidorna hämtar tvprogrammen från de olika kanalernas sidor...

Går det att göra på något enkelt sätt?
[...]

Ja, men utan att veta vilka verktyg som du har tillgång till så blir det något svårare att komma med konkreta förslag. Om det gäller https://www.aik.se så verkar det som värden är Apache på ett Unixbaserat OS.

Nedan är ett perl CGI script som hämtar en resultat sida på https://www.svenskfotboll.se och extraherar två tabeller.

#!/usr/bin/perl

use strict;
use warnings;

use Cache::FileCache;
use URI::Fetch;

{
    my $uri   = 'http://www.svenskfotboll.se/print/Table.asp?TournamentId=30785';
    my $cache = Cache::FileCache->new;
    my $hook  = sub {
        my $content = shift;
        my $wanted  = undef;
        
        while ( $$content =~ m{<table.*?>(.*?)</table>}igs ) {
            
            my $chunk = $1;
            
            if ( $chunk =~ m{(SENASTE RESULTAT|KOMMANDE MATCHER)}i ) {
                $wanted .= sprintf( "<table>%s</table>\n", $chunk );
            }
        }
        
        $$content = $wanted;
    };

    my $response = URI::Fetch->fetch( $uri,
        Cache            => $cache,
        ContentAlterHook => $hook,
        NoNetwork        => 3600,  # Force caching of responses for atleast 1H
    );
    
    if ( $response->status == 200 ) {
        print $response->content;
    }
    else {
        print '<p>Results is temporally unavailable.</p>';
    }
}

Scriptet använder sig utav två moduler som inte följer med vid en standardinstallation utav perl. Om du inte själv har möjlighet att installera dessa så fråga din operatör om hjälp. Modulerna URI::Fetch och Cache::Cache finns hos CPAN.

Scritet är tänkt att installeras i din cgi-bin katalog, och sedan anropas via SSI.

<!--#include virtual="/cgi-bin/remote_results.pl" -->
Medlem sedan apr. 2004206 inlägg
#3

Oj oj!

Tackar så mycket!

Dåligt av mig att inte skriva att jag har ett windowskonto på loopia. Så det kan bli problem med perl....

Men det kanske går att göra ändå med ASP?

267 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)