citera!
Facebook-API
Visa signatur
Bumpar denna tråden då det är samma skript.
Har ett nytt problem nu!
Försöker få till så jag kan uppdatera min databas med månad och år som jag la till vännen. Detta går inte att se så vitt jag vet på mobila sidan utan enbart på fullversionen av sidan via URLen http://facebook.com/profile.php?id=dittID&and=dinvänsID.
Jag lyckas logga in på fullversions-sidan och kan komma åt URLen för att se vilken månad och år man la till varandra. Däremot har jag problem att få ut det från HTML-DOM av någon anledning. ->innerText returnerar bara tomt när jag försöker hämta den. Det lustiga är att när jag skriver ut HTML sidan som curl_exec returnerar så ser jag texten där. Helskumt! Någon idé varför det blir såhär?
public function getDates()
{
$result = $this->db->query("SELECT * FROM `friends` WHERE `date_friended` IS NULL AND `lost` = 'false'");
if( !$result )
echo mysql_error();
$user_key = Config::get('user_key', 'unfriended');
if( !isset( $user_key ) )
return false;
if( $result->num_rows() <= 0 )
die('No friends to update');
ob_start();
while( $row = $result->fetch() )
{
$url = Config::get('url_full', 'unfriended') . '/profile.php?id=' . $user_key . '&and=' . $row->key;
echo 'Trying to get friend ' . $row->name . ' with URL: ' . $url . '<br />';
$html = $this->_getHTML( $url );
//echo $html;
$find = $html->find('div[id="globalContainer"]', 0)->find('div[id="content"]', 0)
->find('div[id="mainContainer"]', 0)->find('div[id="headerArea"]', 0)
->find('div', 0)->find('div[id="pagelet_friendship_status_text"]', 0);
echo '<div>';
if( $find )
echo 'Message: ' . $find->innerText;
else
echo 'No';
echo '</div>';
ob_flush();
flush();
}
}
Exempel output:
Citat:
Trying to get friend Alessia M with URL: http://www.facebook.com/profile.php?id=MITTID&and=HENNESID
Message:
Eftersom $find returnerar någonting(och därmed skriver ut "Message:") så hittar den ju den korrekta div:en.
Tar jag och skriver ut $html istället så får jag denna(kopierar bara slutet, det inom "headerArea"):
<div id="headerArea">
<div>
<span class="fsxxl fwb">
You and
<a data-hovercard="/ajax/hovercard/user.php?id=ID" href="http://www.facebook.com/profile.php?id=ID">NAME</a>
<span id="friendship_header_section"></span>
</span>
<div id="pagelet_friendship_status_text" data-referrer="pagelet_friendship_status_text">Facebook friends since February 2010</div>
</div>
</div>
Förstår inte riktigt.. innerText är ju uppenbarligen någonting och det står ju precis när jag blev vän med personen i fråga. Vad är problemet? :/
Citera flera
Citera
Har hittat problemet. Har dock fortfarande ingen lösning på det.
Problemet är att Facebook fyller
<div id="pagelet_friendship_status_text" data-referrer="pagelet_friendship_status_text"></div>
med hjälp utav javascript. Det är därför det fungerar när jag skriver ut HTML för då följer javascript med som länkas till facebook och div:en fylls med rätta texten. Provade disabla javascript och när jag körde mitt skript(som skrev ut HTML) så blev allt blankt och div:en var tom.
Hur hämtar jag något från en sida där någonting laddas via javascript?
Citera flera
Citera
- ESET hittar skadeprogram som skriver sig självt20
- Tråden om Nintendo Switch 23,7k
- C++ och dess framtid att programmera minnessäkert - Hur går utvecklingen?1,7k
- Hjälp en ångestladdad person med ny gaming PC ~20k3
- Val av CPU-kylare19
- Dagens fynd — Diskussionstråden55k
- Vilka chassimärken håller bra kvalitet?9
- 19" Server för Homeassistant OP med många kameror16
- Bättre stöd för Bluetooth-headset i Windows 1146
- Home Assistant-tråden1,4k
- Säljes Lian Li UNI FAN SL-INF 120 ARGB Reverse Blade PWM Fan - 120mm, black
- Säljes Robotdammsugare Roborock S6
- Säljes I9-12900k + Rog Strix Z690-A Gaming wifi + 32GB Vengence DDR2 + Arctic Liquid Freezer II
- Säljes Samsung S25 Edge 256gb
- Säljes Lian Li Hydroshift 360S med Phanteks D30
- Säljes Seasonic G12 M 650w 80+ Gold
- Säljes Google Pixel 10 Pro - Ny oöppnad
- Säljes Geist Totem Split Bluetooth Tangentbord DIY-kit
- Säljes Moderkort, minne, cpu
- Säljes Bra burk (med eller utan gpu)
- Lenovos handhållna Legion Go 2 kan avtäckas på IFA-mässan1
- ESET hittar skadeprogram som skriver sig självt19
- AMD går på djupet i RDNA 411
- Sapphires moderkort närmar sig lansering21
- Quiz: Vad kan du om gamingskärmar?66
- MSI: 533 dagar senare - knappt någon OLED-inbränning120
- Intels Nova Lake-S nära färdigställda31
- Bättre stöd för Bluetooth-headset i Windows 1146
- AMD Ryzen Threadripper 9980X & 9970X – bäst i klassen19
- Här är de fem första rekryterna till Battlefield 6: Slaget14
Externa nyheter
Spelnyheter från FZ
- Battlefield 6 – ny pc-trailer och detaljerade systemkrav idag
- Fragzone-fredag – Hetast i höst, bäst någonsin och BF6-slaget! idag
- Snart på PS Plus: Psychonauts 2, Stardew Valley, Viewfinder idag
- FZ High Score-säsongen i mål – Vi har en... nej, två vinnare igår
- Bethesda antyder riktiga rymdresor i Starfield igår