Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 53 odgovora
  • 29.377 pregleda

Najnovija ↓

Nova kursna lista 19.03.2007. u 11:11 · pre 238 meseci #1
Da li neko moze da mi pomogne i ostavi neki sajt sa kog skida azurnu kursnu listu i malo objasni na koji nacin, ja sam davno napravio skriptu sa skidanje kursne liste sa NBS, nisam je odavno koristio i juce kada sam probao video sam da vise ne radi Da li neko moze da pomogne bio bih mu jako, jako zahvalan. :)
P.s. Evo uploadovacu moju staru skriptu za skidanje kursne liste
Poz
Potpis
djLapac
Re: Nova kursna lista 19.03.2007. u 11:32 · pre 238 meseci #2
Naime odkad NBS ima novi sajt neke stvari su se promenile sada ti se npr kursna lista nalazi na drugoj lokaciji i u drugom obliku. Sta da ti kazem sem srecno u izmenama jer mislim iskreno da ce ih biti dosta...
Re: Nova kursna lista 19.03.2007. u 11:53 · pre 238 meseci #3
Znam video sam da je ubi boze komplikovano.Nije mi jasno samo zasto su to menjali :)
Bas bez veze da nema nijedan drugi nacin da se preuzme kursna lista???
Potpis
SWAP FILE: The storage file that the kernel uses to hold pages of memory swapped out of RAM.
Re: Nova kursna lista 19.03.2007. u 15:28 · pre 238 meseci #4
Današnji kurs se može naći na sledećoj adresama:
http://www.nbs.yu/internet/lat...&eksport=html&:langkl:

Međutim, kad taj URL pokušam da otvorim preko PHPa dobijem:
Citat:
Warning: fopen(http://www.nbs.yu/internet/lat...mp;eksport=html&:langkl:): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in c:\program files\easyphp1-8\www\test.php on line 8


To se, naravno, dešava samo sa ovim URLom... jel ima neko neku ideju zašto se to dešava? :(
Potpis
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
Re: Nova kursna lista 19.03.2007. u 16:33 · pre 238 meseci #5
Citat:
Nemanja Avramović: ... jel ima neko neku ideju zašto se to dešava? :(

Proveravaju referer, probao sam neki custom header i stavio isti link kao referer, tako jedino uspem da dobijem sadrzaj fajla.
Re: Nova kursna lista 19.03.2007. u 16:59 · pre 238 meseci #6
Nisam razumeo jesi sada uspeo da napravis kod sebe kursnu listu?
Ako jesi da li bi podelio sa clanovima foruma tvoje resenje? :)
Potpis
djLapac
Re: Nova kursna lista 19.03.2007. u 17:14 · pre 238 meseci #7
Citat:
Proveravaju referer, probao sam neki custom header i stavio isti link kao referer, tako jedino uspem da dobijem sadrzaj fajla.


Jesi siguran da je samo referer? Sad sam kliknuo na link koji sam ostavio pre skoro dva sata i referer je ES a link radi :/ Hm...
Potpis
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
Re: Nova kursna lista 19.03.2007. u 17:56 · pre 238 meseci #8
Nisam pravio celu skriptu vec sam samo probao da preuzmem sadrzaj sa linka koji je postovao Nemanja.
Re: Nova kursna lista 19.03.2007. u 18:35 · pre 238 meseci #11
Evo na ovaj nacin uspevam da dodjem do sadrzaja gde je kursna lista, sad bi dalje trebalo parsovanje...
Code:

    $url = 'http://www.nbs.yu/internet/lat...&eksport=html&:langkl:';
    $postdata = '';
    $opts = array('http' =>
        array(
            'method'  => 'POST',
            'header'  =>    "Content-type: application/x-www-form-urlencoded\r\n" .
            "Host: www.nbs.yu\r\n" .
            "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1\r\n" .
            "Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\r\n" .
            "Accept-Language: en-us,en;q=0.5\r\n" .
            "Referer: http://www.nbs.yu/internet/lat...&eksport=html&:langkl:\r\n" .
            "Content-Length: " . strlen($postdata),
            'content' => $postdata                
            )
        );
    $context = stream_context_create($opts);
    $handle = @fopen($url, "rb", false, $context); 
    $contents = '';
    if ($handle){
        while (!feof($handle)) {
            $contents .= fread($handle, 8192);
        }
        fclose($handle);
    } else return false;

    print $contents;
Re: Nova kursna lista 19.03.2007. u 18:35 · pre 238 meseci #12
Izgleda da su gadljivi ako ne nadju user agent u request headeru. Ovako radi:

Code:

ini_set('user_agent', 'Moj Veb Brauzer'); // bez ove linije ne radi

$url = 'http://www.nbs.yu/internet/lat...&eksport=html&:langkl:';
$html = file_get_contents($url);

print $html;
Potpis
Never trust an operating system you don't have sources for.
Re: Nova kursna lista 19.03.2007. u 18:56 · pre 238 meseci #13
bzerov kod sam probao i vraca sledecu gresku gresku:
Warning: file_get_contents() [function.file-get-contents]: php_network_getaddresses: getaddrinfo failed: No such host is known. in C:\wamp\www\lista\lista1.php on line 5

Warning: file_get_contents(http://www.nbs.yu/internet/lat...&eksport=html&:langkl:) [function.file-get-contents]: failed to open stream: No error in C:\wamp\www\lista\lista1.php on line 5
to se desava jer nisam ukapirao na koji fazon radi. (:
Sto si tice brainbugerovog koda probao sam ali ne dobijam nista za parsiranje moze mala pomoc brainbuger?


Potpis
djLapac
Re: Nova kursna lista 19.03.2007. u 20:04 · pre 238 meseci #14
Radi i jedan i drugi nacin, najverovatnije ti je los url jer ga je ovaj editor na ES-u malo secnuo zbog duzine. Otvori taj link na nbs sajtu pa prekopiraj ceo url u kod.
Re: Nova kursna lista 19.03.2007. u 20:41 · pre 238 meseci #15
U pravu si pogresan url.
brainbuger mozes da mi posaljes na mail ceo link jer ne mogu da provalim kako ide.
Koju kod kombinaciju da ukucam dobijem gresku 404.
Bio bih ti puno zahvalan.
Potpis
djLapac
Re: Nova kursna lista 19.03.2007. u 23:04 · pre 238 meseci #16
Ovako stoje stvari:
Probao sam online skriptu i radi.
Skida HTML stranicu sa sajta nbs i prikaze je kod vas.
znam da sada cu zvucati bezobrazno ali bolje da pitam pre nego ja napravim,da li neko ima slucajno gotov kod za parsiranje ove html stranice?
ako niko nema obecavam da cu uskoro postaviti komplet skriptu za vremensku prognozu i kursnu listu.
Poz
Potpis
djLapac
Re: Nova kursna lista 19.03.2007. u 23:22 · pre 238 meseci #17
Kursna lista je dostupna i u sledećim formatima: XML, CSV, Excel, Print i ASCII. Možda je nekome lakše da napiše skriptu koja će da parsira XML dokument (na primer) nego HTML. Takođe, prilikom preuzimanja fajla, morate paziti na datum koji ćete navesti u HTTP zahtevu.

Možda će nekome i ovo da koristi: http://www.nbs.yu/export/inter...006_koriscenje_web_servisa.pdf

p0z
Re: Nova kursna lista 19.03.2007. u 23:31 · pre 238 meseci #18
Sjajno. To sam i ja bas upravo shvatio i posto sam napravio skriptu za parsiranje ascii-ja sutra cu je srediti i postaviti ovde.
Poz svima i hvala na pomoci.
P.s.
Ako neko ima bilo kakvu skriptu za parsiranje bilo kakvog html -a ako moze da je ostavi ovde voleo bih da vidim bas kako i to funkcionise posto nisam nikada probao.
Poz.
Potpis
djLapac
Re: Nova kursna lista 20.03.2007. u 04:07 · pre 238 meseci #19
bash sam juce pravio kursnu listu za moj sajt (nece vam odgovarati Makedonski Denar ? ) :)
pa mi nije bilo tesko da malo prepravim kod da radi sa NBS Kursnoj listi
evo scripte
Code:

<html>
<head>
  <title>Kursna Lista</title>
</head>

<body>

<?
ini_set('user_agent', 'Mozilla Firefox');
$datum=date("d.m").".20".date("y");
$dp='http://www.nbs.yu/internet/latinica/scripts/kl.html?datum=';
$dp.=$datum.'&broj=br.&godina=2006&vrsta=1&eksport=html&:langkl:';
 if (!$dp) {echo(" Error: unable to load URL file into $dp.  Process aborted.");exit();}

 $sp = file_get_contents($dp);

 $adresa=$sp;
 print '<table border=1>';
// odavde kopiraj i promeni $na1='CHF' ili 'AUD' ili 'GBP' za ostale valute
 print"<tr><td>valuta</td><td>kupovni kurs</td><td>srednji kurs</td><td>prodajni kurs</td></tr>";
  $na1='EUR';
        $n1=strpos ( $adresa, $na1);
        $nadresa=''; $eurk='';$eurp='';$eurs='';
     for ($i = $n1+87; $i <= $n1+92; $i++) {
       $eurk.=$adresa{$i};}
     for ($i = $n1+135; $i <= $n1+140; $i++) {
       $eurs.=$adresa{$i};}  
     for ($i = $n1+183; $i <= $n1+188; $i++) {
       $eurp.=$adresa{$i};}
 print "<tr><td>EUR</td><td>$eurk</td><td>$eurs</td><td>$eurp</td></tr>";
// do ovde
     $na1='USD';
        $n1=strpos ( $adresa, $na1);
        $usdk='';$usdp='';$usds='';
     for ($i = $n1+87; $i <= $n1+92; $i++) {
       $usdk.=$adresa{$i};}
     for ($i = $n1+135; $i <= $n1+140; $i++) {
       $usds.=$adresa{$i};}
     for ($i = $n1+183; $i <= $n1+188; $i++) {
       $usdp.=$adresa{$i};}  
 print "<tr><td>USD</td><td>$usdk</td><td>$usds</td><td>$usdp</td></tr>";

 print "</table>";

 ?>

</body>
</html>

Jednostavnim copy-paste se dobija kurs za ostale valute prikazane u NBS tabeli.
Sad radi, i radice dok ne promene dizajn strane, ili dinar postigne trocifrenu vrednost za Euro.
Potpis
http://www.infinity2002.net
Re: Nova kursna lista 20.03.2007. u 09:38 · pre 238 meseci #20
hvala stealth167!
evo ja sam probao tvoju skriptu i radi, a rezultat mozete videti na http://www.strictsystem.com/lista11.php.
evo i uploadovacu i skriptu lista11.php koja je malo preradjena posto za gbp ne radi ovaj stealth167-ov kod. Ali jos jednom hvala posto sam sada ukapirao kako da parsiram html (jako je jednostavno).
Danas kada nadjem vremena okacicu i listu koja parsira ascii i malo je doradjenija i ako uradim skriptu za prognozu isto cu je okaciti ove.
Poz
Potpis
djLapac
Odgovori
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme