![]() |
Hjälp med crawler!
Hej alla!
Jag skall bygga en enkel crawler och jag behöver lite hjälp. Har någon en färdig funktion i PHP som plockar ut länkar ur en klump text och lägger dom i en array? Tex: $text = 'sdhdfjzfgkzfhlkzghl<a href="http://www.sdsdh.se">sdfhdzfjfdvkj</a>dsfhdfjdfj'; get_href($text, $array); //$array = array('http://www.sdsdh.se'); Den måste kunna ta _alla_ länkar. Med eller utan www efter http://. Tacksam för svar. |
Enkelt och för det mesta tillräckligt:
Kod:
preg_match_all('#<a[^>]* href="([^"]+)"[^>]*>([\w\W]+)</a>#i', $text, $matches); |
Funkar inte alls. Kolla:
http://lando.se/c.php //Kod $text = file_get_contents("http://www.youtube.com"); preg_match_all('#<a[^>]* href="([^"]+)"[^>]*>([\w\W]+)</a>#i', $text, $matches); header("Content-type: text/plain"); print_r($matches); |
preg_match_all('@(https?://([-\w\.]+)+(:\d+)?(/([\w/_\.]*(\?\S+)?)?)?)@', $text, $matches);
|
Jag suger på regexp så gjorde en loop etc..
Kod:
function get_href($string) { |
Citat:
Kod:
preg_match_all('#<a[^>]* href="([^"]+)"[^>]*>([\w\W]+)</a>#Ui', $text, $matches); |
Alla tider är GMT +2. Klockan är nu 04:04. |
Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson