Autor | Zpráva | ||
---|---|---|---|
miky Profil * |
#1 · Zasláno: 27. 4. 2007, 13:05:07
hoj, chtel jsem se zeptat jak mohu zjistit data z jiné stránky a dát je automaticky na můj web. Jak ten skript by mel vypadat? pustit cron bych mohl zvládnout díky za pomoc
|
||
BaTeCzKo Profil |
#2 · Zasláno: 27. 4. 2007, 13:49:38
Nešlo by to takhle?
|
||
miky Profil * |
#3 · Zasláno: 27. 4. 2007, 15:33:26
nj, ale takhle mi to tam hodí celou stránku já bych potřeboval nejlépe jenom část ze stránky asi 20 znaků
|
||
miky Profil * |
#4 · Zasláno: 27. 4. 2007, 15:34:19
nebo by mohlo stačit to jako by vyfotit, podle určitých rozměru odkud kam to by bylo také řešení...
|
||
joejoe Profil * |
#5 · Zasláno: 27. 4. 2007, 16:33:26
mno tak potom si z te stranky vytahnes to co potrebujes bud pomoci nejakeho regularniho vyrazu (preg_match, preg_match_all) nebo pomoci strpos() a substr()
- v pripade, ze se jedna o nejaky semanticky web (je k dispozici rdf, apod.), tak je teoreticky mozne pouzit xml parser .. |
||
miky Profil * |
#6 · Zasláno: 27. 4. 2007, 18:57:41
joejoe
co že to jsou to za funkce?:-O? nemuže někdo více poradit? |
||
Acci Profil |
#7 · Zasláno: 27. 4. 2007, 19:02:04 · Upravil/a: Acci
miky
RTFM! http://cz.php.net/ |
||
miky Profil * |
#8 · Zasláno: 27. 4. 2007, 19:26:38
co je rtfm
|
||
Anonymní Profil * |
#9 · Zasláno: 28. 4. 2007, 09:28:38
read the fucking manual alebo ***** citaj manual :)
|
||
Anonymní Profil * |
#10 · Zasláno: 28. 4. 2007, 09:30:09
read the fucking manual alebo ku5va citaj manual :)
som nevedel ze je tu ochrana proti nevhodnym slovam, ktore su aj v slovnikoch |
||
lacop Profil |
#11 · Zasláno: 28. 4. 2007, 09:49:03 · Upravil/a: lacop
1) Obsah nacitas tak ako uz pisal BaTeCzKo:
2a) V pripade, ze ide o nejaky subor s pevnym obsahom, kde je to co chces na rovnakej pozicii, mozes pouzit substr:
2b) Ak ide o subor, ktory sa meni, pouzi regexp. Ukazka - mas niekde v kode nieco taketo:
Toto mozes nacitat nasledovne:
Ak neovladas syntax PCRE pozri sa sem: http://www.php.net/manual/en/reference.pcre.pattern.syntax.php alebo, ak sa ti to naozaj nechce ucit / nerozumies tomu tak mi posli odkial a co chces extrahovat a ja ti ten regexp napisem :) 3) A teraz to asi chces ulozit, napr:
Ak mas PHP 5 mozes pouzit jednoduchsiu variantu:
4) Ak planujes logovat vystup mozes si pridat toto:
P.S.: Sorry ak je tu niekde chyba, netestoval som to, pisem len z hlavy :) |
||
miky Profil * |
#12 · Zasláno: 28. 4. 2007, 12:00:58
hm, tož zkoušel jsem to ale jaksi je někde chyba. Potřebuji získat z webu sazky aktuální jackpot
tj. je to na hlavní straně (www.sazka.cz) JACKPOT SPORTKA S PRÉMIÍ: 101 100 000 Kč Dík za pomoc |
||
DJ Miky Profil |
#13 · Zasláno: 28. 4. 2007, 14:28:09
ale jaksi je někde chyba
Když je někde chyba, tak asi budeš muset něco opravit... // Blíže specifikovat by to nešlo? |
||
miky Profil * |
#14 · Zasláno: 28. 4. 2007, 16:36:56
Ok píše to
Parse error: syntax error, unexpected T_ECHO in /home/www/skautik.org/subdomeny/admin/soubory/b.php on line 14 |
||
lacop Profil |
#15 · Zasláno: 28. 4. 2007, 17:54:20
daj na http://rafb.net/paste/ ten kod
|
||
miky Profil * |
#16 · Zasláno: 28. 4. 2007, 18:00:33
tož tady je: http://rafb.net/p/wHqmN628.html
|
||
nightfish Profil |
#17 · Zasláno: 28. 4. 2007, 18:10:06
chybí ti středník za fclose()
|
||
nightfish Profil |
#18 · Zasláno: 28. 4. 2007, 18:13:38 · Upravil/a: nightfish
|
||
miky Profil * |
#19 · Zasláno: 28. 4. 2007, 18:28:02
nj, ale teďka logicky, když bych chtěl číst data z http://sazka.cz/hry-a-loterie/sportka/vysledky/aktualni-losovani.php kde jackpot bez premie tak když to chci upravit tak to nejde:-(
|
||
nightfish Profil |
#20 · Zasláno: 28. 4. 2007, 18:36:28
tak když to chci upravit tak to nejde:-(
to víš že to jde
|
||
miky Profil * |
#21 · Zasláno: 28. 4. 2007, 18:58:41
ano jde ti to:
if (preg_match("/<TD CLASS="alc valm nadpis1 bc9 p10 bd1 bdc6 bgc7 nw">s*([ds]+) Kč</TD>/", $data, $regs)) { ale předtím bylo if (preg_match("/<SPAN CLASS="v20 b pro0">([ds]*) Kč</SPAN>/", $data, $regs)) { :) a asi losovaná čísla nejdou získat, jaký je vtom systém? |
||
miky Profil * |
#22 · Zasláno: 28. 4. 2007, 19:02:04
myslím především
s*([ds]+) Kč ([ds]*) Kč tyhle rozdíly.. |
||
nightfish Profil |
#23 · Zasláno: 28. 4. 2007, 19:06:09
miky
je to vše o pochopení regulárních výrazů... prostě nastuduješ, co je v okolí tebou požadovaného čísla \s je zástupce pro bílý znak - mezeru, tabulátor, odřádkování \d je zástupce pro libovolnou číslici * je modifikátor, který říká: 0 nebo více výskytů znaku (skupiny znaků), který je před modifikátorem + je modifikátor, který říká: 1 nebo více výskytů znaku (skupiny znaků), který je před modifikátorem http://interval.cz/clanky/regularni-vyrazy-v-php-1/ \s*([\d\s]+) Kč to počáteční \s je tam kvůli odřádkování, které následuje ve zdrojovém kódu za <TD>... a modif. + je tam kvůli tomu, že očekáváme alespoň jednu číslici ([\d\s]*) Kč tady je použit * (nicméně klidně je možno použít i +) |
||
miky Profil * |
#24 · Zasláno: 28. 4. 2007, 19:15:52
aha takže když bych chtěl vybrat tedy 1. tah tak to provedou:
[pre][<TD CLASS="valm nadpis1 bc10 pt4 pr4 bdc10 bdtr1 bgc8 nw"> 17, 45, 9, 10, 22, 18 / 20</TD>/pre]-kod který je na webu s([d]) s - odřádkování. *- tam nebude žádný znak tam není před modifikátorem. chápu to tedy dobře? nebo je to jinak? (...) |
||
miky Profil * |
#25 · Zasláno: 29. 4. 2007, 12:54:40
tak jak tedy?
|
||
miky Profil * |
#26 · Zasláno: 29. 4. 2007, 16:57:13
tak jsem to vyřešil kapánek jinak
$prvni=file("http://sazka.cz/hry-a-loterie/sportka/vysledky/aktualni-l osovani.php"); echo $prvni[403]; //Vypiší první řádek ze zdrojového kódu |
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0