Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Sajt za pretraživanje u okviru stranice

[es] :: Web razvoj :: Sajt za pretraživanje u okviru stranice

[ Pregleda: 2128 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

jablan

Član broj: 8286
Poruke: 4541



+711 Profil

icon Sajt za pretraživanje u okviru stranice06.09.2004. u 08:25 - pre 239 meseci
Ovako: treba mi neki sajt kome se prosledi url i string koji se pretražuje, a on vrati stranicu sa datog url-a odskrolovanu na traženi string, a sam string hajlajtuje.

Jel zna neko da tako nešto ima, da ne kodiram džabe?
 
Odgovor na temu

boccio
Boris Krstović
Spoonlabs.com
nbgd

Član broj: 7594
Poruke: 2458
213.212.252.*

Sajt: bocc.io


+771 Profil

icon Re: Sajt za pretraživanje u okviru stranice06.09.2004. u 10:55 - pre 239 meseci
e jes' ti poso...za 10 minuta to uradis...evo ti primer u PHP-u:

Code:

// pokupi stranu i snimi je u fajl...recimo...
$ch = curl_init ($trazena_adresa_odnosno_stranica);
$fp = fopen ("snimljeno.txt", "w");
curl_setopt ($ch, CURLOPT_TIMEOUT, 120); 
curl_setopt ($ch, CURLOPT_FILE, $fp);
curl_setopt ($ch, CURLOPT_HEADER, 0);

if (!curl_exec ($ch))
  echo "connection failed!";
            
curl_close ($ch);
fclose ($fp);

// sad otvori lokalni fajl...
$file = fopen("snimljeno.txt", "r");
$contents = fread ($file, filesize("snimljeno.txt"));

// pa onda hajlajtuj trazeni string
$hajlajtovano = "<font color=#cccccc>" .$trazeni_string ."</font>"; 
$hajlajtovana_cela_strana = eregi_replace($trazeni_string, $hajlajtovano, $contents); 


eto...
a sto se tice toga da "odskroluje" na trazeni string, ne kapiram to potpuno? sta ako im ima vise? jel to "odskroluje" znaci da treba da simulira <a name=> tag u varijanti da je kliknuto na njega?
bilo kako bilo to ti je jedan dodatni eregi_replace...
Jeff, one day you’ll understand that it’s harder to be kind than clever.
 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+711 Profil

icon Re: Sajt za pretraživanje u okviru stranice06.09.2004. u 12:07 - pre 239 meseci
Ma znam da je 10 minuta za nekog ko radi svaki dan u php-u, ja nemam ovde instaliran a i davno sam php kodirao tako da bi mi trebalo minimum pola sata da sve odradim, pa da okačim negde itd. Zato sam i pitao da li ima negde gotov na nekom sajtu taj servis.

Što se skrolovanja tiče, baš sam mislio na <a name=>, tj. redirektovanje na isti url sa dodatim #targetom. Na tu foru nešto. Prvo pojavljivanje stringa mi je ok.
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.dial.InfoSky.Net

Sajt: localhost


+5 Profil

icon Re: Sajt za pretraživanje u okviru stranice06.09.2004. u 21:49 - pre 239 meseci
za označavanje si dobio, a evo ti za nalaženje #fragmenta..

Code:
function fragment($contents, $pattern) {
    $s = substr($contents, 0, strpos($contents, $pattern));
    preg_match_all('~<a [^>]*\bname=["\']?([^"\'>\s]+)~is', $s, $a);
    return @trim(array_pop($a[1]), '\'"');
}


samo još nekoliko napomena:

1) ovo naravno u slučaju da želiš da koristiš fragmente koji se već nalaze u dokumentu. a ako već menjaš dokument, možeš i da jednostavno pored bojenja texta ubaciš i svoj fragment tipa <a name="nađeno"> odmah ispred nađene reči (koristeći boccijevo rešenje).

2) ovaj regex bi trebao da radi u preko 95% slučajeva.. ne radi recimo za fragmente sa spejsom, tipa <a name="bla truc">, ali može i to da se sredi (malo je komplikovaniji regex).

3) ako će pretraživanje ići uglavnom po engleskim rečima, onda ono boccijevo rešenje može da nađe i više od traženog. npr, pretraga za body može da nađe HTML tag <body>. no, i to se da srediti jednim regex callback-om.

4) a ako pak radiš sa ne-engleskim stranicama, onda moraš da povedeš računa i oko enkodinga (charset). moja lična preporuka po ovom pitanju je da da sve normalizuješ na UTF-8, pa da tako pretražuješ.. (hint: iconv)

5) samo deluje jednostavno.. :-P

 
Odgovor na temu

jablan

Član broj: 8286
Poruke: 4541



+711 Profil

icon Re: Sajt za pretraživanje u okviru stranice07.09.2004. u 09:57 - pre 239 meseci
Citat:
5) samo deluje jednostavno.. :-P

Ama zato sam i pitao da li neko zna da ima negde gotovo. Nema šanse da ja na brzaka (a i vi ovako na forumu) mogu da ga skrpim pa da bude bolje neko da ga neki Švaba napravi, sa svim izuzecima koje si ispravno uočio.

Čisto da objasnim zašto mi treba: zgodno je kad hoćeš nekom da daš URL na neki duži dokument koji nije lepo izlinkovan unutra, da ne bi čoveku (ili eto posetiocu bloga) objašnjavao da treba da pretražuje i da se pati, nego da može odmah da uleti tamo gde treba.
 
Odgovor na temu

[es] :: Web razvoj :: Sajt za pretraživanje u okviru stranice

[ Pregleda: 2128 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.