NetVision-Technik

Zur?ck   NetVision-Technik > Forum > NetVision-Technik > Off-Topic

Off-Topic Hier ist die allgemeine Plauder-Ecke. Alles, was sonst nirgends reinpasst kommt hier rein

 
 
Themen-Optionen Ansicht
Alt 06.09.2011, 13:38   #1
Stifler
König
Punkte: 39.887, Level: 100 Punkte: 39.887, Level: 100 Punkte: 39.887, Level: 100
Levelaufstieg: 0% Levelaufstieg: 0% Levelaufstieg: 0%
Aktivität: 0% Aktivität: 0% Aktivität: 0%
Letzte Erfolge
Auszeichnungen
 
Benutzerbild von Stifler
 
Registriert seit: 14.02.2011
Ort: Graz
Alter: 39
Beitr?ge: 1.495
Abgegebene Danke: 82
Erhielt 200 Danke für 37 Beiträge
Downloads: 11
Uploads: 0
Nachrichten: 6230
Renommee-Modifikator:
3168 Stifler genießt hohes AnsehenStifler genießt hohes AnsehenStifler genießt hohes AnsehenStifler genießt hohes AnsehenStifler genießt hohes AnsehenStifler genießt hohes AnsehenStifler genießt hohes AnsehenStifler genießt hohes AnsehenStifler genießt hohes AnsehenStifler genießt hohes AnsehenStifler genießt hohes Ansehen
Standard Tracker Such API

Hi!

Ich habe mir überlegt ob es nicht toll wäre anstatt auf jedem Tracker einzeln nach etwas bestimmten zu Suchen, mit einer Suchmaschine dies Abzufragen.

Hier zu habe ich eine API gebastelt die eine XML Ausgabe erzeugt!

Beispiel mit dem Suchbegriff "cou": http://screamlabs.at/chatcommunity/i...rch&search=cou

Die Suchmaschine liest die XML aus und gibt in einer Tabelle das Ergebnis aus:
Suche: http://screamlabs.at/test/search.php
Suchergebnis mit "cou": http://screamlabs.at/test/search.php?search=cou

Wer hätte Lust diese API auf seinem Tracker zu testen?

PS: Um Mißbrauch zu verhindern kann jeder einen API Schlüssel in der API eintragen den dann nur die Suchmaschine weiß!

Quellcode:
PHP-Code:
<?

/*
##########################################
## Coded by Stifler  ##
##                2011                  ##
##########################################
*/

require_once("include/bittorrent.php");

$api_version = "1.0";
$apikey = "";
$tracker_name = "";
$tracker_url = "";
$download_url = ""; // http://www.tracker.com/download.php?id={ID} ({ID} NICHT ersetzen!)
$view_url = ""; // http://www.tracker.com/details.php?id={ID} ({ID} NICHT ersetzen!)
$min_string = 3;
$search_limit = 50;

dbconn();

function checkfilename($filename)
{
    $s = $filename;
    $s = str_replace(array("Ä", "Ö", "Ü", "ä", "ö", "ü", "ß"),
                     array("Ae", "Oe", "Ue", "ae", "oe", "ue", "ss"),
                     $s);

    return $s;
}

function xml_error($error_code, $error_string)
{
    global $api_version, $tracker_name, $tracker_url, $search;

$xml = "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>\n".
"<infos>\n".
"<api>\n".
"<version>".$api_version."</version>\n".
"</api>\n".
"<info>\n".
"<tracker>".checkfilename($tracker_name)."</tracker>\n".
"<url>".str_replace("&", "&amp;", $tracker_url)."</url>\n".
"<search>".$search."</search>\n".
"</info>\n".
"<error>\n".
"<id>".$error_code."</id>\n".
"<message>".checkfilename($error_string)."</message>\n".
"</error>\n
</infos>\n";

header("Content-Type: text/xml; charset=utf-8");

echo $xml;

exit();

}

$key = mysql_real_escape_string(trim(rawurldecode($_REQUEST[apikey])));
$search = mysql_real_escape_string(trim(rawurldecode($_REQUEST[search])));

if($key != md5($apikey)) {

xml_error(1, "Invalid API Key (Ungültiger API-Schlüssel)");

}
elseif($search == "" || strlen($search) < $min_string) {

xml_error(2, "Invalid String Length (Ungültige String-Länge)");

}

$query = mysql_query("SELECT id, name, size, seeders, leechers, times_completed FROM torrents WHERE name LIKE '%".$search."%' AND status='1' ORDER BY 'id' DESC LIMIT $search_limit");

$xml = "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>\n".
"<infos>\n".
"<api>\n".
"<version>".$api_version."</version>\n".
"</api>\n".
"<info>\n".
"<tracker>".checkfilename($tracker_name)."</tracker>\n".
"<url>".str_replace("&", "&amp;", $tracker_url)."</url>\n".
"<download>".str_replace("&", "&amp;", $download_url)."</download>\n".
"<view>".str_replace("&", "&amp;", $view_url)."</view>\n".
"<search>".$search."</search>\n".
"<limit>".$search_limit."</limit>\n".
"<min>".$min_string."</min>\n".
"</info>\n";

while($result = mysql_fetch_array($query)) {

$id = intval($result["id"]);
$name = checkfilename($result["name"]);
$size = intval($result["size"]);
$seeder = intval($result["seeders"]);
$leecher = intval($result["leechers"]);
$completed = intval($result["times_completed"]);

$xml .= "<file>\n".
"<id>".$id."</id>\n".
"<name>".$name."</name>\n".
"<size>".$size."</size>\n".
"<seeder>".$seeder."</seeder>\n".
"<leecher>".$leecher."</leecher>\n".
"<completed>".$completed."</completed>\n".
"</file>\n";

}

$xml .= "</infos>";

header("Content-Type: text/xml; charset=utf-8");

echo $xml;

exit();

?>
__________________

Ge?ndert von Stifler (22.09.2014 um 17:34 Uhr)
Stifler ist offline   Mit Zitat antworten Nach oben
Folgende 5 Benutzer sagen Danke zu Stifler für den nützlichen Beitrag:
$iMpLy (07.09.2011), Bluesteel (08.09.2011), BonkeR (06.09.2011), gotthummer (08.09.2011), Thunder™ (07.09.2011)
 


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, G?ste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beitr?ge zu antworten.
Es ist Ihnen nicht erlaubt, Anh?nge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beitr?ge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:20 Uhr.


Powered by vBulletin® Version 3.8.9 (Deutsch)
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Template-Modifikationen durch TMS