/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Hive link ud af en webside
Fra : Mikkel Andreasen


Dato : 30-09-02 15:26

Hej

Er der nogen der kan hjælpe mig med at hente links ud af en webside.

Jeg vil gerne kunne hente en side, der f.eks. indeholder

<a href="mitlink">navnpåmitlink</a>
<a href="mitlink2">navnpåmitlink2</a>

og så få mitlink og mitlink2 i et array. Jeg tror jeg skal bruge ereg eller
preg_match_all, men jeg kan ikke lige gennemskue de regulære udtryk der skal
til!

Mvh.

Mikkel



 
 
Kim Emax - ayianapa.~ (30-09-2002)
Kommentar
Fra : Kim Emax - ayianapa.~


Dato : 30-09-02 15:44


"Mikkel Andreasen" <news@mikkel-andreasen.com> skrev

> Er der nogen der kan hjælpe mig med at hente links ud af en webside.

fopen() hiver hele siden ned til dig,

> Jeg vil gerne kunne hente en side, der f.eks. indeholder
>
> <a href="mitlink">navnpåmitlink</a>
> <a href="mitlink2">navnpåmitlink2</a>
>
> og så få mitlink og mitlink2 i et array. Jeg tror jeg skal bruge ereg
eller
> preg_match_all, men jeg kan ikke lige gennemskue de regulære udtryk der
skal
> til!

du render den så igennem linie for linie og bruger dit regulære udtryk til
at søge efter dine links.

Nu skal du vel ikke til at lave et spam script, der pøller en gæstebog
igennem og henter e-mail adresser?

--
Take Care
Kim Emax - Freelance programmør - Pt. Job og opgavesøgende.
http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Mikkel Andreasen (30-09-2002)
Kommentar
Fra : Mikkel Andreasen


Dato : 30-09-02 15:53


"Kim Emax - ayianapa.dk" <newsgroup@fjerndette-ayianapa.dk> skrev i en
meddelelse news:aqZl9.59413$Qk5.2267539@news010.worldonline.dk...
>
> "Mikkel Andreasen" <news@mikkel-andreasen.com> skrev
>
> > Er der nogen der kan hjælpe mig med at hente links ud af en webside.
>
> fopen() hiver hele siden ned til dig,

Jeps.. Har jeg styr på.

>
> > Jeg vil gerne kunne hente en side, der f.eks. indeholder
> >
> > <a href="mitlink">navnpåmitlink</a>
> > <a href="mitlink2">navnpåmitlink2</a>
> >
> > og så få mitlink og mitlink2 i et array. Jeg tror jeg skal bruge ereg
> eller
> > preg_match_all, men jeg kan ikke lige gennemskue de regulære udtryk der
> skal
> > til!
>
> du render den så igennem linie for linie og bruger dit regulære udtryk til
> at søge efter dine links.

Ja, det var nu det regulære udtryk jeg gerne ville have hjælp til.

>
> Nu skal du vel ikke til at lave et spam script, der pøller en gæstebog
> igennem og henter e-mail adresser?

Nej, det var absolut ikke meningen. Får selv spammail nok.



Jakob Møbjerg Nielse~ (30-09-2002)
Kommentar
Fra : Jakob Møbjerg Nielse~


Dato : 30-09-02 16:35

Kim Emax - ayianapa.dk wrote:
> du render den så igennem linie for linie og bruger dit regulære
> udtryk til at søge efter dine links.

Links kan godt brydes over flere linjer, så hele siden skal søges
igennem, og så skal \s bruges i udtrykket.

--
Jakob Møbjerg Nielsen | "Five exclamation marks, the
jakob@dataloger.dk | sure sign of an insane mind."
http://www.jakobnielsen.dk/ | -- Terry Pratchett, Reaper Man
Jeg søger et fuldtidsjob som programmør. Tag et kig på hjemmesiden.



Jonas Koch Bentzen (30-09-2002)
Kommentar
Fra : Jonas Koch Bentzen


Dato : 30-09-02 17:46

Mikkel Andreasen skrev:
>
> Jeg vil gerne kunne hente en side, der f.eks. indeholder
>
> <a href="mitlink">navnpåmitlink</a>
> <a href="mitlink2">navnpåmitlink2</a>
>
> og så få mitlink og mitlink2 i et array. Jeg tror jeg skal bruge ereg eller
> preg_match_all, men jeg kan ikke lige gennemskue de regulære udtryk der skal
> til!

Her er en, jeg engang brugte til at lave en søgemaskineindekser. Jeg vil
ikke påstå, den tager højde for samtlige situationer, men den er ret
brugbar:

preg_match_all("/<(a|area|frame|iframe|object)
..*(data|href|src)=('|\")(.+)\\3/Ui", $indhold, $resultat);

Pas på med object - den kan godt indeholde sider (derfor er den taget
med), men vil som regel indeholde binær data som f.eks. billeder eller lyd.


Jonas Koch Bentzen (30-09-2002)
Kommentar
Fra : Jonas Koch Bentzen


Dato : 30-09-02 17:49

Jonas Koch Bentzen skrev:
>
> preg_match_all("/<(a|area|frame|iframe|object)
> .*(data|href|src)=('|\")(.+)\\3/Ui", $indhold, $resultat);

De resulterende links kan man så løbe igennem på følgede måde:

foreach ($resultat[4] as $vaerdi) {
   // gør noget
}


Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408950
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste