Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
sõnum |
|
Popp
Kreisi kasutaja
liitunud: 22.02.2006
|
27.01.2008 21:07:45
Andmete kogumine teistelt veebilehtedelt |
|
|
Otsisin Googlest aga mitte midagi ei leidnud teema kohta, kuidas koguda andmeid teistelt veebilehtedelt. Mõtlen siis täpsemalt näiteks mingisuguseid numbreid tabelitest või muutuvat teksti. Midagi samasugust nagu Excelis "Create Refreshable Web Query" aga näiteks PHP keeles.
Ehk on keegi targem, kes oskab küsimusele vastuse anda ning ehk ka õigele teele juhendada
|
|
Kommentaarid: 67 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
1 :: |
54 |
|
tagasi üles |
|
|
Laurikre
HV Guru
liitunud: 20.09.2003
|
27.01.2008 21:11:09
|
|
|
Ehk tahad emaile copyda lehtedelt ?
Laurikre:.
_________________ Need: Windows, .Net, Sharepoint, Exchange, Dynamics, Visual Studio, XNA, Expression, Silverlight, SQL and many other skills? Talk to me
Rohkem IT uudiseid iga päev BattleIT lehelt |
|
Kommentaarid: 154 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
5 :: |
131 |
|
tagasi üles |
|
|
Popp
Kreisi kasutaja
liitunud: 22.02.2006
|
27.01.2008 21:13:06
|
|
|
eee...ei
ma tahaks näiteks võtta mõne veebilehe, kus on ütleme kulla hind dollarites untsi kohta. Nemad uuendavad seda iga päev...aga ma tahan selle ümber convertida kroonidesse kilogrammi kohta. Et ma ei peaks käsitsi sisestama
|
|
Kommentaarid: 67 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
1 :: |
54 |
|
tagasi üles |
|
|
QWhite
Kreisi kasutaja
liitunud: 24.02.2004
|
27.01.2008 21:18:21
|
|
|
PHPs tee skript mis avab sellele lehele socketi, teeb http pöördumise ja tulemuses sorteerib välja õiged andmed (nt string, mis jääb "<td>GOLD</td><td>" ja "</td>" vahele olekski tabelist kulla hind), mille saad läbi korrutada.
Ja kui vaja, võid seda skripti CRONiga esile kutsuda mingi aja tagant (kui ei taha iga pöördumisega välisühendust kulutada).
|
|
Kommentaarid: 63 loe/lisa |
Kasutajad arvavad: |
|
:: |
1 :: |
0 :: |
59 |
|
tagasi üles |
|
|
Popp
Kreisi kasutaja
liitunud: 22.02.2006
|
27.01.2008 21:23:40
|
|
|
jah midagi sellist küll peaks olema aga ise ei ole progeja, et ehk on mingit näidet kellelgi või viiteid mida otsingusse panna, et näiteid leida
EDIT: kas su allkirjas on vastus mu küsimusele ?
|
|
Kommentaarid: 67 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
1 :: |
54 |
|
tagasi üles |
|
|
QWhite
Kreisi kasutaja
liitunud: 24.02.2004
|
27.01.2008 21:30:07
|
|
|
Endale olen sellise kirjutanud:
function getpage($url) {
$prot_len=strpos($url,"//")+2;
$host=substr($url,$prot_len,strpos($url,"/",$prot_len)-$prot_len);
$getstr=strstr(substr($url,8),"/");
$fp = fsockopen($host, 80, $errno, $errstr, 30);
if (!$fp)
echo "$errstr ($errno)<br />\n";
else {
$out = "GET ".$getstr." HTTP/1.0\r\n";
$out .= "Host: ".$host."\r\n";
$out .= "Connection: Close\r\n\r\n";
fwrite($fp, $out);
while (!feof($fp))
$data.=fread($fp, 1024);
fclose($fp);
}
return strstr($data,"\r\n\r\n");
}
echo getpage ("http://www.neti.ee/"); |
EDIT: no comments :P
|
|
Kommentaarid: 63 loe/lisa |
Kasutajad arvavad: |
|
:: |
1 :: |
0 :: |
59 |
|
tagasi üles |
|
|
Popp
Kreisi kasutaja
liitunud: 22.02.2006
|
27.01.2008 21:37:07
|
|
|
ma ei oska progeda ju
Mis see teeb täpsemalt?
Ehk viitsid ikka natukene kommenteerida...
|
|
Kommentaarid: 67 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
1 :: |
54 |
|
tagasi üles |
|
|
i8080
Kreisi kasutaja
liitunud: 15.03.2002
|
|
Kommentaarid: 166 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
149 |
|
tagasi üles |
|
|
QWhite
Kreisi kasutaja
liitunud: 24.02.2004
|
28.01.2008 01:03:45
|
|
|
Mõni hostija on URLi fopen-imise ära keelanud, aga fsockopen on reeglina ikka olemas.
|
|
Kommentaarid: 63 loe/lisa |
Kasutajad arvavad: |
|
:: |
1 :: |
0 :: |
59 |
|
tagasi üles |
|
|
Popp
Kreisi kasutaja
liitunud: 22.02.2006
|
28.01.2008 01:11:48
|
|
|
minu host oli vist fsockopen'i ära keelanud...aga ma uurin seda hommikul täpsemalt
|
|
Kommentaarid: 67 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
1 :: |
54 |
|
tagasi üles |
|
|
i8080
Kreisi kasutaja
liitunud: 15.03.2002
|
28.01.2008 01:20:21
|
|
|
veidi ot aga alla 30-50eeku kuumaksuga teenusepakkujatel on justkui kõik kinni keeratud, mis vähegi annab, eriti veel socketid.
praegu vaatasin sul koduleht/WWW on planet.ee ja seal minuteada, kah midagi head selles osas loota pole. võid kohapeal sama serveri tasemel oma "poolstaatilise" sisuhaldusega majandada ainult
|
|
Kommentaarid: 166 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
149 |
|
tagasi üles |
|
|
Popp
Kreisi kasutaja
liitunud: 22.02.2006
|
28.01.2008 01:21:21
|
|
|
just...planet.ee pakub hetkel seda. Kuidagi mööda sellest minna ei saa? Või midagi teisiti teha?
|
|
Kommentaarid: 67 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
1 :: |
54 |
|
tagasi üles |
|
|
i8080
Kreisi kasutaja
liitunud: 15.03.2002
|
28.01.2008 01:58:00
|
|
|
panin praegu mõlemad näidiskoodi jupid (QWhite ja enda oma) sinna planet peale ülesse ja võid ise vaadata, mis veateateid sellepeale loobib:
http://dieter.planet.ee/urlread.php
tõlkes: turvakaalutlustel keelatud ja servu konfis keelatud - ehk teisisõnu selle väikse puru eest rohkem ei pakuta
Popp kirjutas: |
Kuidagi mööda sellest minna ei saa? Või midagi teisiti teha? |
tavaline arvuti ja selle peal töötav programm, mis andmed netist kohale tirib, ära töötleb ja siis üle ftp uuendatud failid üles laeb iga natukese aja tagant, kui vaja.
ise kasutan selleks tarbeks toanurgas töötavat igivanat läpparit, mis nagunii 24/7 sees on ja vahest p2p tirib ja igatsugu muid asju teeb, vähese voolutarbega, märkamatult.
ega jah perfektne lahendus see muidugi pole. pealegi keerulisem kui php...
|
|
Kommentaarid: 166 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
149 |
|
tagasi üles |
|
|
Popp
Kreisi kasutaja
liitunud: 22.02.2006
|
09.05.2008 16:54:42
|
|
|
jah QWhite oma ma proovisin ja veateade oli sama.
Kui see võimatu on siis peab hakkama teenusepakkujat vahetama või mõne muu alternatiivi leidma
Või ehk on keegi, kes oskab mõne muu sarnase lahendusega välja tulla
EDIT: kas funktsiooni 'fread' väljundit saab ka kuidagi poolitada ja muuta?
|
|
Kommentaarid: 67 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
1 :: |
54 |
|
tagasi üles |
|
|
marttali
HV kasutaja
liitunud: 16.12.2003
|
15.05.2008 19:33:34
|
|
|
php curl
|
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
|
skycat
HV kasutaja
liitunud: 20.05.2003
|
|
Kommentaarid: 17 loe/lisa |
Kasutajad arvavad: |
|
:: |
2 :: |
0 :: |
12 |
|
tagasi üles |
|
|
furyy
HV kasutaja
liitunud: 06.02.2006
|
03.06.2008 12:22:48
|
|
|
marttali kirjutas: |
php curl |
php.net soovitusel:
function get_curl($url)
{
$curl = curl_init();
$header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,";
$header[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
$header[] = "Cache-Control: max-age=1";
$header[] = "Connection: keep-alive";
$header[] = "Keep-Alive: 300";
$header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
$header[] = "Accept-Language: en-us,en;q=0.5";
$header[] = "Pragma: "; // browsers keep this blank.
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible) Firefox/3.0');
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
//curl_setopt($curl, CURLOPT_REFERER, 'http://www.example.com/');
curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate');
curl_setopt($curl, CURLOPT_AUTOREFERER, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_TIMEOUT, 10);
$html = curl_exec($curl);
curl_close($curl);
//implement 404 etc. handling
return $html;
}
echo get_curl("http://www.neti.ee");
|
Planetis töötab edukalt
_________________ 48 thousand years into the future, you've still got a knack for stating the obvious. |
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
|
morgoth
HV kasutaja
liitunud: 14.01.2004
|
03.06.2008 13:12:35
|
|
|
Curli abil on jah kõige lihtsam. Vajadusel saad isegi selle abil kuskile sisse logida
|
|
Kommentaarid: 11 loe/lisa |
Kasutajad arvavad: |
|
:: |
0 :: |
0 :: |
10 |
|
tagasi üles |
|
|
|