Kom ihåg mig?
Home Menu

Menu


Hjälp med att söka och separera text

Ämnesverktyg Visningsalternativ
Oläst 2006-08-26, 20:44 #1
PetterS PetterS är inte uppkopplad
Medlem
 
Reg.datum: Apr 2006
Inlägg: 71
PetterS PetterS är inte uppkopplad
Medlem
 
Reg.datum: Apr 2006
Inlägg: 71
Hejsan!

Jag behöver hjälp med en för mig ganska komplicerad grej. För att kunna samla in information om uppladdare/nedladdare till min torrentsida vill jag söka igenom andra sidors htmlkod och hitta resultatet.

Till att börja med gör jag såhär:

<?php
$mininova = include('http://www.mininova.org/get/404337');
?>
För att läsa in sidan jag vill åt. (Är detta sättet verkligen smart? den är ju på 8kb.)

Nu kommer förhoppningsvis $mininova att innehålla källkoden till hela hemsidan. Där finns ju informationen jag vill ha. Det väsentliga i hela källkoden är de siffrorna vi ser i koden nedan.

<tr><td>Seeds:</td><td><div class="g">13</div></td></tr>
<tr><td>Leechers:</td><td><div class="b">2</div></td></tr>

Nu behöver jag hjälp med en funktion som kan plocka ut siffrorna!

Eventuellt skulle man även kunna göra detta med något slags javascript!

Tack på förhand! //Petter
PetterS är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-08-26, 21:00 #2
Per Per är inte uppkopplad
Supermoderator
 
Reg.datum: Apr 2003
Inlägg: 719
Per Per är inte uppkopplad
Supermoderator
 
Reg.datum: Apr 2003
Inlägg: 719
Använd reguljära uttryck (eng. regular expressions). Se: php.net/preg_match.

(I ditt fall kanske: #<tr><td>Seeds:</td><td><div class="g">(.*?)</div></td></tr># resp. #<tr><td>Leechers:</td><td><div class="b">(.*?)</div></td></tr>#)
__________________
www.ip2nation.com (ip till land)
Per är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-08-26, 21:01 #3
grazzy grazzy är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Mar 2004
Inlägg: 3 471
grazzy grazzy är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Mar 2004
Inlägg: 3 471
Kod:
preg_match('/<tr><td>Seeds:</td><td><div class="g">(\d+)<\/div><\/td><\/tr>/',$mininova,$matches);
echo $matches[0];
Läs på om regexp och preg_match. Att göra det med javascript blir svårt.


Edit: uj, dubbelpost med Per.
grazzy är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-08-26, 21:17 #4
PetterS PetterS är inte uppkopplad
Medlem
 
Reg.datum: Apr 2006
Inlägg: 71
PetterS PetterS är inte uppkopplad
Medlem
 
Reg.datum: Apr 2006
Inlägg: 71
Ok! Tackar för svar! Jag har dock lite problem med att läsa in en hel hemsida i en sträng! Det vill helt enkelt inte fungera.
PetterS är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-08-26, 21:22 #5
Lundmarks avatar
Lundmark Lundmark är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Jan 2004
Inlägg: 1 026
Lundmark Lundmark är inte uppkopplad
Har WN som tidsfördriv
Lundmarks avatar
 
Reg.datum: Jan 2004
Inlägg: 1 026
Citat:
Originally posted by PetterS@Aug 26 2006, 19:44

<?php
$mininova = include('http://www.mininova.org/get/404337');
?>
Testa:

$mininova = implode('', file(http://www.mininova.org/get/404337));


Edit: Det kan även vara problem med radbrytningar.... allt måste vara rätt när du söker i texten.
Lundmark är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-08-26, 23:52 #6
PetterS PetterS är inte uppkopplad
Medlem
 
Reg.datum: Apr 2006
Inlägg: 71
PetterS PetterS är inte uppkopplad
Medlem
 
Reg.datum: Apr 2006
Inlägg: 71
Jepp! Nu funkar det=) Synd bara att mininova har en responstid på typ 10 minuter...
PetterS är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-08-27, 00:07 #7
grazzy grazzy är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Mar 2004
Inlägg: 3 471
grazzy grazzy är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Mar 2004
Inlägg: 3 471
Lägg upp ditt phpscript som ett cronjobb i bakgrunden och skriv in datat du efterfrågar i en databas som du sedan hämtar det ifrån. Du måste säkert inte hämta från mininova varje gång du skall visa datat.
grazzy är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 18:32.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017