php.hr

PHP & MySQL => PHP => Autor teme: profion - 03.07.2005., 17:26



Naslov: Fetch
Autor: profion - 03.07.2005., 17:26
trebam izvaditi dijelove Web-sitea...i to pohraniti u mySQL
npr:
<td><a href="neki_link.php">USERNAME</a></td>
      <td align="right">BROJ</td>

      <td align="left">
                     Orcs
               </td>
      <td align="right" style="padding-right: 20px;">RIJEC</td>
      <td align="right" style="padding-right: 20px;">BROJ2</td>
   </tr>
tako izgleda kod...
iz toga bih trebao izvaditi USERNAME, BROJ, RIJEC, BROJ2 i staviti u mysql
treba mi samo dio koda s preg_match ili preg_match_all
HELp...:S


Naslov: Fetch
Autor: nori - 04.07.2005., 11:02
Evo ti nesto neiskusno i nabrzaka:
Kod:
'<td><a href=".*?">(.*?)</a></td>\r\n<td align="right">(.*?)</td>(\r\n|.)*?<td align="right" style="padding-right: 20px;">(.*?)</td>\r\n<td align="right" style="padding-right: 20px;">(.*?)</td>\r\n</tr>'

P.S. provjeri line break (DOS / UNIX). Ovo gore je s DOS.


Naslov: Fetch
Autor: davorin - 04.07.2005., 12:32
kada parsas html, najbolje ga je prvo ocistiti od tagova, stavit podatke u array-u i onda sa njima raditi.

ako netko izmijeni html, onda ti algoritam pada u vodu. ovako je nezavisan o html kodu.

Kod:
$html="<td><a href=\"neki_link.PHP\">USERNAME</a></td><td align=\"right\">BROJ</td><td align=\"left\">Orcs</td><td align=\"right\" style=\"padding-right: 20px;\">RIJEC</td><td align=\"right\" style=\"padding-right: 20px;\">BROJ2</td></tr>";

$podaci=split("\n",strip_tags($html));
foreach ($podaci as $key => $value) if (empty($podaci[$key])) unset($podaci[$key]);

print_r($podaci);


ovo ce ti biti array-a sa svim podacima i jednim podatkom "Orcs". njega maknes ( kao i sve ostale rase ;) )

za popravljanje indexa koristi

Kod:
$podaci=array_values($podaci);


Naslov: Fetch
Autor: nori - 05.07.2005., 08:05
Citat: davorin

ako netko izmijeni html, onda ti algoritam pada u vodu. ovako je nezavisan o html kodu.

Tesko ce netko u ovom slucaju napravit nesto nezavnisno sto se tice html-a. Ne znam na sto si ti ciljas da je nezavisno? Meni pada na pamet dosta mogucih html promjena koje bi dosta cudno napunile bazu.


Naslov: Fetch
Autor: davorin - 05.07.2005., 09:18
algoritam koji sam stavio na forum nije univerzalan. inace bi svatko bio programer :lol:

kada maknes html kod, ostane ti samo tekst. bio on bold, italic, font 102, whatever u htmlu, uvijek ces dobiti plan text.

zatim razvijes algoritam koji ce tim tekstom napuniti matricu. meni je to jednostavnije nego da radim ogroman regular expression i sl. stvari.

ideja je tu uzeti neke podatke sa weba. substr i strpos za uzimanje dijela html-a gdje su nama bitni podaci, zatim maknes html i dobijes goli tekst kojeg prebacis u matricu. ne vidim previse mjesta za cudne podatke.


Naslov: Fetch
Autor: nori - 06.07.2005., 08:33
Citat: davorin
ne vidim previse mjesta za cudne podatke.

ni ja, sve dok netko ne promjeni html kod ;). (npr makne neki "\n")

moram priznati da me zanima sto je efikasnije svi govore da su regexi "skupi" pa me zaima kako stoje u ovom slucaju. ako ti se da mozemo nparaviti neki testic ako vec neko nije


Naslov: Odg: Fetch
Autor: jimmychoo123 - 18.02.2011., 02:55
There is a good trade in Jimmy Choo (http://www.shopjimmychooshoes.com/) heels. The heels at Jimmy Choo Outlet (http://www.shopjimmychooshoes.com/) can give ladies feminine way of walking. Jimmy Choo Sale (http://www.shopjimmychooshoes.com/) is getting hot.


php.hr | Powered by SMF 1.1.13. © 2005, Simple Machines LLC. All Rights Reserved.