Poslao: 08 Nov 2007 10:02
|
offline
- ljuba973
- Novi MyCity građanin
- Pridružio: 05 Nov 2007
- Poruke: 21
- Gde živiš: Malta
|
Svemirko ::ljuba973 ::mozes li da testiras ?
ja sam testirao i gledao razlike....
strpas to u for petlju da odradi jedno 20-ak puta (ili vise zavisi koliko je potrebno da se izvali razlika) i vidis koji ce brze da se zavrsi
Hehe ...
Nisam se dobro 'odrazio'. Mislio sam vise zbog servera da mi se hosting provajder ne dere na usi da ga davim ... Jer stranice cu da postavim sa nekim imenima ryiuyrweyuweirtwur.php koje cu da pokrecem iz cron-jobsa na svakih 12 sati ili svaki dan ... videcu jos ... znaci vreme ucitavanja nije problem koliko da ne udavim server ako skinem 1000 rezultata, parsiram ih i posle trebam da ih smestim u bazu. Nebi smelo da je problem ali eto pitam
PS: A druga dva pitanja?
|
|
|
Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
|
|
Poslao: 08 Nov 2007 10:38
|
offline
- Svemirko
- Legendarni građanin
- Pridružio: 24 Mar 2004
- Poruke: 3962
- Gde živiš: Zemun
|
kazes svakih 12 sati svaki dan.
A koliko treba da se izvrsi skripta ? vremenski u sek, minutima ili cemu vec.
Ne znam ni koji hosting.... satro imas odredjeno procesorko vreme koje ti se da i tako ta cuda....
ali ako nije bas predugacko i ako je van domasaja korisnika i njihovog kliktanja mislim da nece biti problema.
a sto se tice ostalih pitanja cekaj blood a
kao sto vidis, ja krajnje mrzim ovo i ja sam ti rekao kako sam sebi nesto radio.... strpos, substr, str_replace i tako dalje
|
|
|
|
|
Poslao: 08 Nov 2007 20:28
|
offline
- Blood
- Ugledni građanin
- Pridružio: 26 Jul 2003
- Poruke: 384
- Gde živiš: Beograd
|
1. U svakom slucaju radi sporije nego da ima samo jedan ili dva parametra, ali preg f-je su u svakom slucaju brze.
2. Mislim da ne moze, ali ovde ima bas svega o regexp pa mozda naidjes na nesto gde kaze da mozes: http://aspn.activestate.com/ASPN/docs/ActivePerl-5.6/lib/Pod/perlre.html
Ovaj tvoj reg exp mi nema bas nesto smisla, ajd stavi mi tacno sta ti treba pa da napisemo regexp za to.
Dopuna: 08 Nov 2007 20:20
Citat:
Nije mi jasno zasto ne stane na "> koji su ispred CountPosts vec ode na onaj ispred njega ... kako da 'prikoci'?
Po defaultu kod regexpa match je "greedy" tj. pokusava da pronadje najveci moguci match. U tvom slucaju pokupi sve izmedju prvog "> i poslednjeg & (ukljucujuci i ko zna koliko istih unutra). Znak '?' u ovom slucaju bi to trebao da iskljuci, znaci umesto (.*) kucas (.*?)
Dopuna: 08 Nov 2007 20:28
druga stvar, zar ti nije lakse da izvuces samo url i uradis mu explode po / i tako si dobio ceo url koji ti treba u nizu, posle samo isprintas onaj deo koji ti treba recimo
$url = explode("/",$urlFromRegExp);
echo $url[4]; // ili koji ti gog vec treba //
|
|
|
|
Poslao: 08 Nov 2007 20:54
|
offline
- ljuba973
- Novi MyCity građanin
- Pridružio: 05 Nov 2007
- Poruke: 21
- Gde živiš: Malta
|
Cao,
Hvala na odgovorima.
Blood ::1. U svakom slucaju radi sporije nego da ima samo jedan ili dva parametra, ali preg f-je su u svakom slucaju brze.Jasno
Blood ::2. Mislim da ne moze, ali ovde ima bas svega o regexp pa mozda naidjes na nesto gde kaze da mozes: aspn.activestate.com/ASPN/docs/ActivePerl-5.6/lib/Pod/perlre.html
Ovaj tvoj reg exp mi nema bas nesto smisla, ajd stavi mi tacno sta ti treba pa da napisemo regexp za to.
Radim prikupljanje linkova i stranica sa Google, MSN, i Yahoo. Google sam postavio ovde, MSN gradi linkove na isti nacin kao i Google pa je bilo lako da promenim skriptu i uradio sam za MSN. Yahoo se prave pametni pa u link ugrade i neki svoj redirekter a ne link - tako da ako primenim fazon kao u Google i MSN resenju - pokupi mi rds.yahoo.com/... pa kojesta iza.
Kada odradim getcontent iz PHP dobijam sledeci kod iz kog cupam podatke:
<li id="li5" class="yscheven no1" onmouseover="javascript:liOver(this,5)" onmouseout="javascript:liOut(this,5)">
<a class="yschttl" href="http://rds.yahoo.com/blog/razno/countposts-v-10-wordpress-plugin/">CountPosts v 1.0 - WordPress Plugin - Ðukijev blog</a>
<address class="no1">
<span id="rslt1details5" class="ysrsltsdetails" style="position:inherit;display:none;"><span><a href='http://rds.yahoo.com/sitereg?.scrumb=0&crumb=&txtSiteUrl=http%3A%2F%2Fdjuki.padrino.rs%2Fblog%2Frazno%2Fcountposts-v-10-wordpress-plugin%2F&btnRegSite'>Authenticate the site</a> to see additional information</span><span></span> <span></span></span>
<span class="yschurlline" style="padding-top:0;"><span id="ysrsltsurlinfo"><em class="yschurl"><b>djuki.padrino.rs</b>/blog/razno/<wbr>countposts-v-10-wordpress-plugin</em> - <em>81k</em> - <a href="http://rds.yahoo.com/search/cache?ipc=1&.intl=&u=djuki.padrino.rs/blog/razno/countposts-v-10-wordpress-plugin/&d=JenSjPL9Pvgg&p=http%3A%2F%2Fwww.elitesecurity.org">Cached</a></span>
Podaci koje odavde moram da pocupam su:
1. CountPosts v 1.0 - WordPress Plugin - Ðukijev blog
2. http%3A%2F%2Fdjuki.padrino.rs%2Fblog%2Frazno%2Fcountposts-v-10-wordpress-plugin%2F
Moje resenje je: mycity.rs/must-login.png
Blood ::Po defaultu kod regexpa match je "greedy" tj. pokusava da pronadje najveci moguci match. U tvom slucaju pokupi sve izmedju prvog "> i poslednjeg & (ukljucujuci i ko zna koliko istih unutra). Znak '?' u ovom slucaju bi to trebao da iskljuci, znaci umesto (.*) kucas (.*?)Jasno
Blood :: druga stvar, zar ti nije lakse da izvuces samo url i uradis mu explode po / i tako si dobio ceo url koji ti treba u nizu, posle samo isprintas onaj deo koji ti treba recimo
$url = explode("/",$urlFromRegExp);
echo $url[4]; // ili koji ti gog vec treba //
Lakse bi bilo da Yahoo ne stavlja u link budzu od kojekakvih stvari i pravi link je iza txtSiteUrl= Neznam jel moze nesto kao: $url = explode("txtSiteUrl=",$urlFromRegExp);
Ko zna, mozda i moze ali mi nekako bilo prirodnije i logicnije da txtSiteUrl= koristim ko granicnik odakle da uzimam podatke.
Hvala puno
|
|
|
|
Poslao: 09 Nov 2007 00:16
|
offline
- Blood
- Ugledni građanin
- Pridružio: 26 Jul 2003
- Poruke: 384
- Gde živiš: Beograd
|
$pattern = '{<a class="yschttl".*?">(.*?)</a>.*?u=(.*?)&}s';
$content = '<li id="li5" class="yscheven no1" onmouseover="javascript:liOver(this,5)" onmouseout="javascript:liOut(this,5)">
<a class="yschttl" href="http://rds.yahoo.com/blog/razno/countposts-v-10-wordpress-plugin/">CountPosts v 1.0 - WordPress Plugin - Ðukijev blog</a>
<address class="no1">
<span id="rslt1details5" class="ysrsltsdetails" style="position:inherit;display:none;"><span><a href=\'http://rds.yahoo.com/sitereg?.scrumb=0&crumb=&txtSiteUrl=http%3A%2F%2Fdjuki.padrino.rs%2Fblog%2Frazno%2Fcountposts-v-10-wordpress-plugin%2F&btnRegSite\'>Authenticate the site</a> to see additional information</span><span></span> <span></span></span>
<span class="yschurlline" style="padding-top:0;"><span id="ysrsltsurlinfo"><em class="yschurl"><b>djuki.padrino.rs</b>/blog/razno/<wbr>countposts-v-10-wordpress-plugin</em> - <em>81k</em> - <a href="http://rds.yahoo.com/search/cache?ipc=1&.intl=&u=djuki.padrino.rs/blog/razno/countposts-v-10-wordpress-plugin/&d=JenSjPL9Pvgg&p=http%3A%2F%2Fwww.elitesecurity.org">Cached</a></span>';
preg_match_all($pattern,$content,$result);
$i = 0;
while ($i < count($result[1])) {
echo $result[1][$i].' => '.$result[2][$i]."<br />\n";
$i++;
};
Ja sam kao rezultat dobio ovo
CountPosts v 1.0 - WordPress Plugin - Ðukijev blog => djuki.padrino.rs/blog/razno/countposts-v-10-wordpress-plugin/
|
|
|
|
|
Poslao: 09 Nov 2007 00:41
|
offline
- Blood
- Ugledni građanin
- Pridružio: 26 Jul 2003
- Poruke: 384
- Gde živiš: Beograd
|
heh, pravo da ti kazem ovaj gornji nisam ni video ali i da jesam verovatno bi opet uFatio ovaj donji jer je url lepsi, ti sada samo ispred dodaj http:// i zavrsio si posao. Nisam siguran ali mislim da je ovaj gornji url enkodovan, posle bi morao da koristis jos najmanje jednu f-ju za dekodovanje, ili str_replace pa da menjas %2F u / zato mislim da je ovako lakse.
Np.
|
|
|
|