Avatar billede andrew Nybegynder
31. januar 2009 - 23:29 Der er 23 kommentarer og
2 løsninger

Fiktiv browser-info

Hej.

Jeg er igang med et lille forsøg på at finde antal medlemmer i en gruppe på facebook.

Mit første problem ligger i, at når jeg forsøger at hente indholdet(html) af gruppen, får jeg en meddelelse fra FB at "browseren" ikke understøttes. Problemet er, at når jeg henter sideindholdet, hentes det ikke af en browser men af PHP.

Kan jeg på nogen måde få udført ovenstående, enten ved at lave en "fiktiv" browser eller lignende, så FB tror det er eks. IE eller FF?
Avatar billede erikjacobsen Ekspert
31. januar 2009 - 23:32 #1
Du kan sætte en User-Agent på i kaldet, fx.

  User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; da; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5
Avatar billede coderdk Praktikant
31. januar 2009 - 23:37 #2
e.g.

$agent = "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; da; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5";

ini_set("user_agent",$agent);

hvis du bruger file_get_contents og

curl_setopt($ch, CURLOPT_USERAGENT, $agent);

hvis du bruger cURL...
Avatar billede erikjacobsen Ekspert
31. januar 2009 - 23:40 #3
Hvis du bruger de to metoder coderdk anviser skal du lige ændre strengen til

$agent = "Mozilla/5.0 (Windows; U; Windows NT 6.0; da; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5";
Avatar billede andrew Nybegynder
31. januar 2009 - 23:43 #4
Fedest.. Tak coderdk.. :)

Er du en haj til preg_match??
Avatar billede andrew Nybegynder
31. januar 2009 - 23:48 #5
Tak Erik. Nu virker det..

Mit mål er at kunne finde antallet af medlemmer i gruppen. Har fundet flg. i kildekoden:

<span>77 members</span>



Kan man på nogen måde finde "77 members" via preg-match samtidigt med forbehold for om der står "77 members" eller "77 medlemmer"??

Smider flere point i puljen for retfærdigheden :)
Avatar billede erikjacobsen Ekspert
01. februar 2009 - 00:01 #6
$s = "Vi er <span>88 medlemmer</span>";

if (preg_match('/<span>(\d+) (medlemmer|members)<\/span>/',$s,$r)) {
    print "Svaret er $r[1]";
}
Avatar billede andrew Nybegynder
01. februar 2009 - 00:03 #7
Fedest.. :)Det spiller bare første gang.. Takker mange gange.. Smid et svar.. begge to!
Avatar billede erikjacobsen Ekspert
01. februar 2009 - 00:12 #8
Ingen point til mig, tak. Jeg samler ikke.
Avatar billede olebole Juniormester
01. februar 2009 - 15:41 #9
<ole>

andrew >> Jeg håber, du husker denne tråd, næste gang du selv - på en af dine egne sider - ønsker at filtrere bots eller andet fra fra med User-Agent eller IP  =)

Hvis man forventer, at robotter overholder WWW's uskrevne regler og f.eks. overholder anvisningerne i ens robots.txt, bør man selv overholde de samme regler og være ærlig omkring de ting, man foretager sig på nettet. Ellers har man svært ved at blive taget alvorligt, hvis man på et tidspunkt skulle føle for at brokke sig over andres 'plat-botter' - eller for den sags skyld hackere - på ens eget site  ;o)

/mvh
</bole>
Avatar billede coderdk Praktikant
01. februar 2009 - 16:53 #10
Hov, ja, tak erik.
andrew, tag nogle point selv :)
Avatar billede andrew Nybegynder
01. februar 2009 - 20:26 #11
Tak Coderdk.. Det var hurtig hjælp.. Også fra Erik!!

Ole, jeg forstår ikke dit indlæg. Mit tidligere indlæg vedr. robotter, har på intet tidspunkt været for at blockere dem. Blot for at udelade dem fra min besøgstæller!!

Desuden, føler jeg mig ikke helt frisk i syntaxen i en preg_match, hvilket jeg forhåbentlig snart bliver - hvilket er årsagen til at jeg spørg på Eksperten!

Siger endnu engang tak!! Fortsat god søndag. :)
Avatar billede olebole Juniormester
01. februar 2009 - 20:36 #12
"Ole, jeg forstår ikke dit indlæg" >> Det finder jeg egentlig ret bekymrende!

Jeg refererer ikke til evt. tidligere tråde. Jeg gør mig blot nogle etiske/moralske overvejelser omkring det at bilde folk ind, man er en anden, end den man faktisk er. Det er aldrig god stil - og slet ikke når man henter vedkommendes indhold til eget brug.

Måske, du forstår det en dag, når en anden prøver at platte sig igennem dine egne foranstaltninger mod misbrug af et eller flere af dine sites  ;o)
Avatar billede erikjacobsen Ekspert
01. februar 2009 - 21:32 #13
For at være mere præcis end Ole (det er sommetider nemt...):

Fra Facebooks vilkår:  "Desuden accepterer du ikke at bruge tjenesten eller webstedet til at: [...] bruge automatiseret kode til at indsamle information fra eller på anden måde interagere med tjenesten eller webstedet, [...]"

Men i hvilken juridisk forstand det gælder for dig kan jeg ikke sige. De vil sikkert kunne lukke din facebook-profil, hvis de opdager, og hvis de gider tage stilling til, det du foretager dig.

Modsat Ole, så er jeg nok ret ligeglad med hvad du gør ;) Nå ja, Ole er nok også!
Avatar billede erikjacobsen Ekspert
01. februar 2009 - 21:34 #14
...og blokere dit IP-nummer...
Avatar billede erikjacobsen Ekspert
01. februar 2009 - 21:36 #15
Og jeg er ikke på FB for man heller ikke må "overføre, opslå, sende, dele, gemme eller på anden måde offentliggøre indhold, som vi vurderer er [...] provokerende, [...]"

Det ville være alt for svært at overholde, for mig. Tvivler egentlig også på Ole er på FB - af samme grund.

;)
Avatar billede andrew Nybegynder
01. februar 2009 - 21:53 #16
Ole, indholdet jeg henter, som Erik hjalp mig med, er antallet af brugere i en gruppe på FB. Denne gruppe er en jeg selv har oprettet, og ser ikke noget galt i det jeg henter. Det med user-agent var nødsaget for at FB kunne lade mig læse den gruppe.

En anden side er så det Erik refererer til. Det må jeg så indrømme at jeg ikke viste. Men på den anden side forstår jeg ikke at det skal kommenteres. Det eneste jeg spørg efter, er hjælp til en kode, og ikke andet.
Avatar billede showsource Seniormester
01. februar 2009 - 22:01 #17
så kunne du jo også spørge om kode til at hacke min comp med side 9 piger!
Pointen fra erik er jo at facebook ikke ønsker requests medmindre du bruger din browser til at se siden.
Og det er med garanti uanset hvilken gruppe du har oprettet/er medlem af.
Avatar billede erikjacobsen Ekspert
01. februar 2009 - 22:13 #18
Sommetider får man mere, end man be'r om - på eksperten.dk ;)

Men hvordan kan du have oprettet dig på FB uden at have læst betingelserne??
Avatar billede andrew Nybegynder
01. februar 2009 - 22:32 #19
Ja, man får noget for sine points. :)

Jeg kan sagtens se problematikken og indrømmer gerne det der er overset.

Ja, spørgsmålet er jo så, hvordan man evt. har oprettet sig uden af have læst betingelserne. Det er jo nok de færreste der læser dem - mig i blandt.
Avatar billede erikjacobsen Ekspert
01. februar 2009 - 22:38 #20
Nåh - ok. På den måde.
Avatar billede coderdk Praktikant
01. februar 2009 - 22:53 #21
"Men hvordan kan du have oprettet dig på FB uden at have læst betingelserne??"

LOL :-)
Avatar billede andrew Nybegynder
01. februar 2009 - 23:03 #22
:)
Avatar billede olebole Juniormester
02. februar 2009 - 09:31 #23
"Det med user-agent var nødsaget for at FB kunne lade mig læse den gruppe." >> Ja, det er jo lige præcis min pointe! Og du er også nødt til at klæde dig ud og måske endda score en andens ID- og nøglekort, hvis du vil ind i Netto efter lukketid.

Tror du, FB har haft for mange penge, så de for at komme af med nogle af dem, har hyret en programmør til at sætte den begrænsning op - eller tror du, de har haft en god grund til at sætte den op?

"Men på den anden side forstår jeg ikke at det skal kommenteres. Det eneste jeg spørg efter, er hjælp til en kode, og ikke andet." >> Og hvis du 'bare' spurgte om, hvor du kan købe en Uzi maskinpistol ... ville du så heller ikke kunne forstå, det blev kommenteret?

"Ja, spørgsmålet er jo så, hvordan man evt. har oprettet sig uden af have læst betingelserne. Det er jo nok de færreste der læser dem - mig i blandt." >> Jeg har en bil til salg ... var det ikke lige noget for dig? Du synes at være den perfekte kunde, set fra en sælgers PoV  ;o)
Avatar billede olebole Juniormester
02. februar 2009 - 09:33 #24
- og Erik har iøvrigt helt ret ... jeg er ikke(!) på FB  ;o)
Avatar billede olebole Juniormester
02. februar 2009 - 09:37 #25
... vi er jo stadig somme, der har læst 1984 og husker Kejsergade, DDR og Stasi. Der er næppe mange af os, som kaster sig fjærtende af fryd i armene på dagens overvågere  ;o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester