El siguiente es un plugin para Kizi.com que es una pagina de juegos varios, bastante usada en mi red, yo lo tengo en funcionamiento y hasta ahora responde, pruebenlo y si encuentran alguna forma de mejorarlo adelante.
#include <iostream>
#include <cstring>
#include <vector>
#include "../utils.cpp"
// use this line to compile
// g++ -I. -fPIC -shared -g -o kizi.com.so kizi.com.cpp
// regex
// http.*\.kizi\.com.*(\.jpg|\.mp3|\.png|\.swf|\.gif|\.flv)
string get_filename(string url) {
vector<string> resultado;
if (url.find("?") != string::npos) {
stringexplode(url, "?", &resultado);
stringexplode(resultado.at(resultado.size()-2), "/", &resultado);
return resultado.at(resultado.size()-1);
} else {
stringexplode(url, "/", &resultado);
return resultado.at(resultado.size()-1);
}
}
extern "C" resposta getmatch(const string url) {
resposta r;
if ( (url.find(".kizi.com/games/") != string::npos) and
(url.find(".jpg") != string::npos) or
(url.find(".flv") != string::npos) or
(url.find(".gif") != string::npos) or
(url.find(".mp3") != string::npos) or
(url.find(".png") != string::npos) or
(url.find(".swf") != string::npos)
) {
r.file = get_filename(url);
if (!r.file.empty()) {
r.match = true;
r.domain = "Kizi-games";
} else {
r.match = false;
}
} else {
r.match = false;
}
return r;
}
Buen aporte Oogie Boogie .
#include <iostream>
#include <cstring>
#include <vector>
#include "../utils.cpp"
// use this line to compile
// g++ -I. -fPIC -shared -g -o kizi.com.so kizi.com.cpp
// regex
// http.*\.kizi\.com.*(\.jpg|\.mp3|\.png|\.swf|\.gif|\.flv)
string get_filename(string url) {
vector<string> resultado;
if (url.find("?") != string::npos) {
stringexplode(url, "?", &resultado);
stringexplode(resultado.at(resultado.size()-2), "/", &resultado);
return resultado.at(resultado.size()-3)+"_"+resultado.at(resultado.size()-2)+"_"+resultado.at(resultado.size()-1);
} else {
stringexplode(url, "/", &resultado);
return resultado.at(resultado.size()-3)+"_"+resultado.at(resultado.size()-2)+"_"+resultado.at(resultado.size()-1);
}
}
extern "C" resposta getmatch(const string url) {
resposta r;
if ( (url.find(".kizi.com/games/") != string::npos) and
(url.find(".jpg") != string::npos) or
(url.find(".flv") != string::npos) or
(url.find(".gif") != string::npos) or
(url.find(".mp3") != string::npos) or
(url.find(".png") != string::npos) or
(url.find(".swf") != string::npos)
) {
r.file = get_filename(url);
if (!r.file.empty()) {
r.match = true;
r.domain = "Kizi-Games";
} else {
r.match = false;
}
} else {
r.match = false;
}
return r;
}