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

Izdvajanje linkova

[es] :: PHP :: Izdvajanje linkova

[ Pregleda: 1117 | Odgovora: 5 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Kusur
Grafički dizajner
Beograd

Član broj: 2485
Poruke: 166
..njuel-bg.customer.sbb.co.yu.



Profil

icon Izdvajanje linkova20.02.2006. u 19:10

Pozdrav svima

Da li neko zna kako da iz neke html strane izdvojim linkove, tj. ime linka i "http://...". Mislim da se koristi preg_match_all i regular exp. ali kako?

Na primer evo dela neke html strane:

Code:
<p><a href="http://www.link1.com">Proba1</a>
</p>
<p>  <a href="http://www.link2.com">Proba2</a></p>
<p><a href="http://www.link3.com">Proba3</a></p>


a kada izvučem ono što mi treba:

Proba1
http://www.link1.com

Proba2
http://www.link2.com

Proba3
http://www.link3.com

Unapred hvala
Kusur
20.02.2006. u 19:10 

Zeljko Mitrovic

Član broj: 3197
Poruke: 80
*.cmbrmaor.covad.net.



Profil

icon Re: Izdvajanje linkova21.02.2006. u 16:27
Code:
<?php
$linija = file('test.html');     /* Zameni sa nazivom tvog html fajla */
$linije = count($linija);     
for($x = 0; $x< $linije; $x++)     
{
    preg_match("#<a href=\"(.+?)\">(.+?)</a>#i", $linija[$x], $url);
    echo $url[2] . "<br>";     /* Ispisuje ime linka */
    echo $url[1] . "<br>";    /* Ispisuje adresu */
}
?>

Zeljko M.
21.02.2006. u 16:27 

Kusur
Grafički dizajner
Beograd

Član broj: 2485
Poruke: 166
..njuel-bg.customer.sbb.co.yu.



Profil

icon Re: Izdvajanje linkova21.02.2006. u 20:44
Hvala
Kusur
21.02.2006. u 20:44 

Pharos
Pančevo

Član broj: 20664
Poruke: 975
*.3dnet.co.yu.



Profil

icon Re: Izdvajanje linkova22.02.2006. u 01:00
Sve linkove?
Da ne pišeš slučajno skriptu koja će da skine sve slike s onih sajtova :)
77 77 77 2E 65 73 6E 69 70 73 2E 63 6F 6D
22.02.2006. u 01:00 

sale83
Aleksandar Ervacanin
Full Time Student & Full Time Zaposlen ( IT Suppo..
Sydney

Član broj: 41625
Poruke: 610
*.inabox.net.

Sajt: www.serbiansite.com


Profil

icon Re: Izdvajanje linkova22.02.2006. u 03:29
U onaj kod sto je Zeljko napisao treba da izgleda ovako:

Code:

<?php
$linija = file('test.html');     /* Zameni sa nazivom tvog html fajla */
$linije = count($linija);     
for($x = 0; $x< $linije; $x++)     
{
    preg_match("#<a href=\"(.+?)\">(.+?)</a>#i", $linija[$x], $url);

    if($url[1]!="" and $url[2]!=""){ // Samo ako je link tj da ne prikazuje praznine

    echo $url[2] . "<br>";     /* Ispisuje ime linka */
    echo $url[1] . "<br>";    /* Ispisuje adresu */

    }
}
?>




[Ovu poruku je menjao sale83 dana 22.02.2006. u 04:30 GMT+1]
PHP/MySQl/SQL/VB.NET/JAVA/JSP/Servlet/MSSQLServer/MSAccess/Perl
COBOL/JCL/CICS -> IBM Mainframe
Nortel/Cisco/SideWinder
22.02.2006. u 03:29 

Br@nkoR

Član broj: 2597
Poruke: 1388
*.ptt.yu.



Profil

icon Re: Izdvajanje linkova22.02.2006. u 10:57
Npr.
http://www.php.net/dom
Code:

$page = '<html>
           <head>
             <title>test</title>
           </head>
           <body>
             <a href="http://link1.com">link1</a>
             <a href="http://link2.com">link2</a>
             <a href="http://link3.com">link3</a>
             <a href="http://link4.com">link4</a>
           </body>
         </html>';
$document = new DOMDocument();
$document->loadHTML($page);
/* ili */// $document->loadHTMLFile('file.html');
$links = $document->getElementsByTagName('a');
foreach($links as $link) {
  echo $link->nodeValue.'<br />'.$link->getAttribute('href').'<br /><br />';
}


[Ovu poruku je menjao Br@nkoR dana 22.02.2006. u 12:26 GMT+1]
22.02.2006. u 10:57 

[es] :: PHP :: Izdvajanje linkova

[ Pregleda: 1117 | Odgovora: 5 ]

Postavi temu Odgovori

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