• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Abfrage auf externer Seite

Sunnyboy

Mitglied
Hallo zusammen

Ich wollte mich mal bei euch Sachkundigen erkundigen, ob es möglich ist auf einer Seite wie z.B. kinox.to eine Abfrage zu formulieren. Konkret, ob es einen Film gibt oder nicht auf einer externen Seite aufzulisten.

Vielen Dank im Voraus
Lieber Gruss
Sunnyboy
 
Werbung:
Bietet kinox.to dafür eine API an? Falls nicht, könntest Du das bspw. mit der PHP-cURL-Extension lösen. Damit kannst Du Server-Requests generieren und dabei verschiedene Protokolle verwenden - legal ist das aber nicht; hol dir da also lieber noch eine Erlaubnis von den kinox.to-Betreibern.
 
Ich finde keine api Schnittstellen, für meine Ziel-Siten. Währe es aber möglich einen Link zu generieren, der dem der Site entspricht und herauszufinden ob es ein entsprechendes Resultat gibt?
Die Struktur des Links ist immer gleich, aber ich weiss nicht, wie/ob man dazu noch die auch gleichbleibende Struktur der erscheinenden Site auswerten kann und darf.

Z.B. auf kinox.to der generierte URL für die Suche nach "Beispiel Suche" ist immer dem Muster "http://kinox.to/Search.html?q=Beispiel+Suche" entsprechend.
Währe es nun möglich herauszufinden, was nun auf dieser Site auftaucht?

Ich weiss nicht, inwiefern das PHP-cURL-Extension entspricht aber dies währe ja scheinbar nicht legal...

Vielen Dank für die Antworten
Sunnyboy
 
Werbung:
Z.B. auf kinox.to der generierte URL für die Suche nach "Beispiel Suche" ist immer dem Muster "http://kinox.to/Search.html?q=Beispiel+Suche" entsprechend.
Währe es nun möglich herauszufinden, was nun auf dieser Site auftaucht?
Hat den kinox.to nichts dagegen, dass Du die Resultate ausliest und auf deiner Seite veröffentlichst?


Wie schon gesagt, deine Anforderung lässt sich mit cURL umsetzen.
PHP:
$cUrl = curl_init();
curl_setopt($cUrl, CURLOPT_URL, 'http://kinox.to/Search.html?q=Beispiel+Suche');
curl_setopt($cUrl, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($cUrl);
echo $result;
 
Merci für die rasche Antwort!

Also ob ich das machen darf, weiss ich nach wie vor nicht. Aber fragen kostet ja nicht :)

Aber ich glaube, ich habe mir ein wenig viel vorgenommen. Ich verstehe nämlich nicht, was mit diesem cURL ausgegeben/kopiert werden kann. Ich habe zwar auch noch auf php.net nachgeguckt, aber bin nicht schlau geworden.

Ich wäre euch unglaublich dankbar, wenn ihr mir ein bischen auf die Sprünge helfen könnt (man lernt ja am meisten wenn man mehr will als man kann). Vorallem in Bezug auf was ich genau einsehen kann...

Vielen herzlichen Dank
Sunnyboy
 
Ich verstehe nämlich nicht, was mit diesem cURL ausgegeben/kopiert werden kann.
curl_exec() gibt, sofern der Request erfolgreich war, true bzw. wenn CURLOPT_RETURNTRASFER auf true gesetzt wurde, den Quelltext der aufgerufenen Website zurück. Da ich letzteres in meinem Code-Beispiel getan habe, erhälst Du durch die Ausgabe von $result den Quellcode der Website (also von kinox.to).

Grüße
Nico
 
Werbung:
Hallo Nico

Danke viel mal für deine fortlaufenden Antworten! Ich habe die Sache auf dem localhost getestet und habe nun mal online versucht. Ich bekam dann eine Fehlermeldung. (Fatal error: Call to undefined function curl_init(), die Zeile mit $cUrl = curl_init... betreffend).

Der Code war ziemlich gleich:
PHP:
<?php
error_reporting(E_ALL);
$cUrl = curl_init();
curl_setopt($cUrl, CURLOPT_URL, 'http://www.osswald.li/index.php');
curl_setopt($cUrl, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($cUrl);
echo $result; 
?>

Ich habe keine Erklärung dafür, weil ich bei der Fehlerauswertung keine Ahnung habe :wink: auch Google konnte mir über diesen Fehler nicht weiterhelfen.

Ich hoffe wie der Nutzername hast du mir einen Top-T!p :-D
Lieber Gruss Sunnyboy
 
Hallo

Google war doch hilfreich!
Ich habe nun auf meinem Rechner curl-init installiert und siehe da es hat geklappt - aber nur auf dem localhost. Wie erreicht man, dass es auch online Funktioniert?

Hoffe auf eure/deine Antwort...
Gruss Sunnyboy
 
Dann ist curl nicht auf dem Server installiert. Je nach Betriebssystem muss das auf unterscheidliche weise nachinstalliert werden. Debian und Ubuntu müssten mit
Code:
sudo apt-get install php5-curl
klarkommen.

Ansonsten müsste doch auf PHP: file_get_contents - Manual funktionieren? Ich gehe nicht davon aus, dass die Seite das überprüft. Und dann kannst du per regex überprüfen ob der Film vorhanden ist.

Wobei sich ja auch über die legalität von der Seite streiten läst. *hust*

--
Update:
Online muss es (wie lokal auch) auf dem Server installiert werden, wenn du Webspace hast musst du wohl deinen Anbieter fragen.
 
Werbung:
Merci

Wie gesagt ist php5-curl auf meinem Server bereits installiert. Allerdings auf dem Webspace nicht.
Aber damit hat sich mein Problem wohl erledigt.

Ich danke euch beiden fürs helfen!
Liebe Grüsse
Sunnyboy
 
Hallo

Ich wollte nicht ein neues Thema erstellen, weil meine Frage recht gut dazupasst.

Ich möchte gerne eine Seite per c_url kopieren, der vorher ein Wert übergeben werden soll (per post).

Ich schaffe aber nicht diese Funktion anzuwenden. Es sollte ein String (mit CURLOPT_POSTFIELDS oder so ähnlich?) übergeben werden, wenn die Seite aufgerufen wird.

Ihr wisst sicher, wie man das machen kann...
Vielen Dank
Sunnyboy
 
Zuletzt bearbeitet:
Habe es selber geschafft.

Fals jemand daran interessiert ist, mein Script sieht so aus:

PHP:
<?php
    $url = "der Url der Seite mit dem Formular";
    $post = "name=1.Wort%202.Wort&Form_Submit=Send";
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    echo curl_exec($ch);
    curl_close($ch);    
?>

Das entspricht nun dem Formular:

HTML:
<form method="post" action="<?php echo "url der Seite auf die es geht"; ?>">
   <input name="name" value="1.Wort 2.Wort">
   <input type="submit" name="submit" value="Abschicken">
</form>

Fals Fehler darin sind in Bezug auf den Vergleich tut es mir schrecklich leid :)

LG Sunnyboy
 
Zuletzt bearbeitet:
Werbung:
Zurück
Oben