2016-09-14 2 views
0

Ich versuche auf der Website http://www.discogs.com mit PHP-Skript und cURL einzuloggen.Wie man sich auf Discogs.com mit PHP curl (oder anderen) anmeldet?

Ich brauche das, um Daten von https://www.discogs.com/sell/mywants?ev=wsim zu erhalten - es ist eine Liste von Angeboten mit Elementen, die zur Wunschliste hinzugefügt werden. Von dem, was ich fand, ist diese Liste nicht in API verfügbar.

Ich habe Probleme mit der Anmeldung mit Standard-cURL-Anfrage. Hier ist mein Code:

$username = 'myuser'; 
$password = 'mypassword'; 
$loginUrl = 'https://www.discogs.com/login'; 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $loginUrl); 
curl_setopt($ch, CURLOPT_POST, 1); 
curl_setopt($ch, CURLOPT_POSTFIELDS, 'username='.urlencode($username).'&password='.urlencode($password)); 
curl_setopt($ch, CURLOPT_COOKIEJAR, 'c:\cookie.txt'); 
curl_setopt($ch, CURLOPT_COOKIEFILE, 'c:\tmp.txt'); 
curl_setopt($ch, CURLOPT_COOKIESESSION, true); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
curl_setopt($ch, CURLOPT_USERAGENT,'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/32.0.1700.107 Chrome/32.0.1700.107 Safari/537.36'); 
curl_setopt($ch, CURLOPT_HEADER, true); 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_exec($ch); 

if (curl_error($ch)) { 
    echo curl_error($ch); 
    return; 
} else { 
    echo "OK"; 
} 

curl_setopt($ch, CURLOPT_URL, 'https://www.discogs.com/sell/mywants?ev=wsim'); 
$content = curl_exec($ch); 

echo $content; 

curl_close($ch); 

Als Ergebnis bekomme ich Login-Seite statt Seite mit aufgeführten Angeboten.

Können Sie mir sagen, was mache ich falsch?

Antwort

1

Wie ich getestet habe, erfordert die Anmeldeseite das Posten eines anderen Feldes, das Action.Login ist, um die Anmeldeanforderung gültig zu machen.

curl_setopt($ch, CURLOPT_POSTFIELDS, 'username='.urlencode($username).'&password='.urlencode($password).'&Action.Login='); 

Hoffe das hilft.

+0

genial! :) jetzt geht es! Danke für Ihre Hilfe. – user3626048

Verwandte Themen