Por la complejidad de los datos, no he tenido mas remedio que hacer tres scripts.
PlayboyBiographyPlaymate(ES)
PlayboyBiographyCybergirls(ES)
PlayboyBiographyCoeds(ES)
En todos ellos hay unas lineas ejemplo:
----------------------------------------------------------------------------
Cadena := StringReplace(Cadena, 'BIRTHPLACE','LUGAR DE NACIMIENTO');
----------------------------------------------------------------------------
Para que tu mismo a traves del blog de notas añadas lineas de estas a conveniencia, cambiando la palabra inglesa que esta entre comillas por la española que esta entre comillas.Esto hara que se traduzca el dato, yo por mi parte ya he puesto las que me han ido saliendo, por otra parte en comentarios añado el vinculo al video.swf si lo hay.
Tambien te he puesto el tipo de soporte dependiendo del origen de los datos, espero que te sirvan los scripts un saludo.
PlayboyBiographyPlaymate(ES)
------------------------------------
Code: Select all
(***************************************************
Ant Movie Catalog importation script
www.antp.be/software/moviecatalog/
[Infos]
Authors=Legrad
Title=PlayboyBiography-Playmates
Description=
Site=www.playboy.com
Language=ES
Version=1.0
Requires=3.5.0
Comments=
License=
GetInfo=1
[Options]
***************************************************)
program PlayboyBiographyPlaymates;
var
MovieName: string;
MovieURL: string;
//---------------------------------------------------------
function BorraComillas(var S: string): string;
var
n,len, tag: Integer;
c: char;
t: String;
begin
tag := 0;
t := '';
len := length(s);
for n :=1 to len do
begin
c := Copy(s,n,1);
if c = '''' then
c := ' ';
t := t + c;
end
s := t;
result := t;
end;
//------------------------------------------------------------------
function FindLine(Pattern: string; List: TStringList; StartAt: Integer): Integer;
var
i: Integer;
begin
Result := -1;
if StartAt < 0 then
StartAt := 0;
for i := StartAt to List.Count-1 do
if Pos(Pattern, List.GetString(i)) <> 0 then
begin
Result := i;
Break;
end;
end;
//------------------------------------------------------------------------------------
function TextBetween(var S: string; StartTag: string; EndTag: string): string;
var
InitialPos: Integer;
begin
InitialPos := Pos(StartTag, S);
if InitialPos = 0 then
result := ''
else
begin
Delete(S, 1, InitialPos + Length(StartTag) - 1);
InitialPos := Pos(EndTag, S);
if InitialPos = 0 then
result := S
else
begin
result := copy(S, 1, InitialPos - 1);
Delete(S, 1, InitialPos + 1);
end;
end;
end;
//------------------------------------------------------------------------------------
function DeleteTags(var S: string): string;
var
n,len, tag: Integer;
c: char;
t: String;
begin
tag := 0;
t := '';
len := length(s);
for n :=1 to len do
begin
c := Copy(s,n,1);
if c = #9 then
c := ' ';
if(tag=1) then
begin
if(c='>') then tag := 0;
continue;
end
else
begin
if(c='<') then
begin
tag := 1;
continue;
end;
t := t + c;
end;
end
s := t;
result := t;
end;
//------------------------------------------------------------------------------------
function Reemplazar(Cadena: string) :string;
begin
Cadena := StringReplace(Cadena, 'BIRTHPLACE','LUGAR DE NACIMIENTO');
Cadena := StringReplace(Cadena, 'BUST','BUSTO');
Cadena := StringReplace(Cadena, 'WAIST','CINTURA');
Cadena := StringReplace(Cadena, 'HIPS','CADERAS');
Cadena := StringReplace(Cadena, 'HEIGHT','ALTURA');
Cadena := StringReplace(Cadena, 'WEIGHT','PESO');
Cadena := StringReplace(Cadena, 'Birthplace','LUGAR DE NACIMIENTO');
Cadena := StringReplace(Cadena, 'Bust','BUSTO');
Cadena := StringReplace(Cadena, 'Waist','CINTURA');
Cadena := StringReplace(Cadena, 'Hips','CADERAS');
Cadena := StringReplace(Cadena, 'Height','ALTURA');
Cadena := StringReplace(Cadena, 'Weight','PESO');
Cadena := StringReplace(Cadena, 'AMBITIONS','AMBICIONES');
Cadena := StringReplace(Cadena, 'TURN-ONS','GUSTOS');
Cadena := StringReplace(Cadena, 'TURNOFFS','INCLINACIONES');
Cadena := StringReplace(Cadena, 'WHEN I WAS YOUNGER','CUANDO ERA MENOR');
Cadena := StringReplace(Cadena, 'THEN I LEARNED','ADEMAS APRENDI');
Cadena := StringReplace(Cadena, 'NOW I KNOW','HOY DIA SE');
Cadena := StringReplace(Cadena, 'FAVORITE APPLIANCES','APARATOS PREFERIDOS');
Cadena := StringReplace(Cadena, 'WHAT MEN DO BETTER THAN WOMEN','LO QUE HACEN MEJOR LOS HOMBRES QUE LAS MUJERES');
Cadena := StringReplace(Cadena, 'PERSONAL PHOBIA','FOBIAS');
Cadena := StringReplace(Cadena, 'FAVORITE VIDEO','VIDEO PREFERIDO');
Cadena := StringReplace(Cadena, 'DREAM TREK','VIAJE SOÑADO');
Cadena := StringReplace(Cadena, 'THE MAN I LOVE','EL HOMBRE QUE AMO');
Cadena := StringReplace(Cadena, 'NO ONE WOULD BELIEVE','NADIE CREE');
Cadena := StringReplace(Cadena, 'ALL I WANT FOR CHRISTMAS','LO QUE QUIERO EN NAVIDAD');
Cadena := StringReplace(Cadena, 'FAVORITE AUTHORS','AUTORES PREFERIDOS');
Cadena := StringReplace(Cadena, 'FAVORITE STIMULANT','ESTIMULANTE PREFERIDO');
Cadena := StringReplace(Cadena, 'SELF-DESCRIPTION','Auto-DESCRIPCIÓN');
Cadena := StringReplace(Cadena, 'LOVE HINT','INDICIO DE AMOR');
Cadena := StringReplace(Cadena, 'ULTIMATE GOAL','OBJETIVO FINAL');
Cadena := StringReplace(Cadena, 'FAVORITE BOOKS','LIBROS PREFERIDOS');
Cadena := StringReplace(Cadena, 'FAVORITE PERFORMERS','ACTORES PREFERIDOS');
Cadena := StringReplace(Cadena, 'FAVORITE SPORTS','DEPORTES PREFERIDOS');
Cadena := StringReplace(Cadena, 'IDEAL MAN','HOMBRE IDEAL');
Cadena := StringReplace(Cadena, 'SECRET FANTASY','FANTASIA SECRETA');
Cadena := StringReplace(Cadena, 'NOTE','NOTA');
Cadena := StringReplace(Cadena, 'EVERY WOMAN SHOULD HAVE','TODA MUJER DEBERÍA TENER');
Cadena := StringReplace(Cadena, 'FAVORITE OUTDOOR ACTIVITIES','ACTIVIDADES AL AIRE LIBRE PREFERIDAS');
Cadena := StringReplace(Cadena, 'FAVORITE MOVIE AND WHY','PELICULA PREFERIDA');
Cadena := StringReplace(Cadena, 'PLACES I WANT TO VISIT AND WHY','LUGARES QUE QUIERO VISITAR');
result := Cadena;
end;
//---------------------------------------------------------------------
procedure AnalyzePage(Address: string);
var
strPage,MovieAddr,MovieTitle,MovieID: string;
BeginPos,EndPos: Integer;
begin
strPage := GetPage(Address);
BeginPos := Pos('en el dominio <b>www.playboy.com/girls', strPage);
if(BeginPos > -1)then
begin
PickTreeClear;
Delete(strPage, 1, BeginPos);
BeginPos := Pos('ref="http://www.playboy.com/girls/playmates/', strPage);
EndPos := 1;
while ((BeginPos > 0) and (EndPos > 0)) do
begin
Delete(strPage, 1, BeginPos);
EndPos := Pos('" class', strPage);
MovieId := Copy(strPage,+44, EndPos-44);
BorraComillas(MovieId);
MovieAddr := 'http://www.playboy.com/girls/playmates/' + MovieId;
BeginPos := Pos(')"',strPage);
EndPos := Pos('</h2>', strPage);
MovieTitle := Copy(strPage,BeginPos, EndPos);
MovieTitle := TextBetween(MovieTitle , '>', '-');
//MovieTitle := AnsiUpFirstLetter(MovieTitle);
DeleteTags(MovieTitle);
PickTreeAdd(MovieTitle,MovieAddr);
BeginPos := Pos('ref="http://www.playboy.com/girls/playmates/', strPage);
if(Pos('</body>', strPage) < BeginPos) then
BeginPos := -1;
end;
PickTreeSort;
end;
PickTreeExec(Address);
AnalyzeMoviePage(Address);
end;
//------------------------------------------------------------------------------------
procedure AnalyzeMoviePage(Address: string);
var
Page: TStringList;
LineNr: Integer;
Line: string;
Busca: Integer;
Item: string;
Comments: string;
Actors: string;
Directors: string;
Description: string;
begin
// URL
SetField(fieldURL, Address);
Page := TStringList.Create;
Page.Text := GetPage(Address);
//photo
LineNr := FindLine(' <img src="', Page, 0);
if LineNr <> -1 then
begin
Line := Page.GetString(LineNr);
Item := TextBetween (Line, '<img src="', '" width');
Item := StringReplace(Item , '.html','.jpg');
GetPicture('http://www.playboy.com/girls/playmates/directory/'+Item);
end;
// MEDITYPE
SetField(fieldMediaType, ('Playmate'));
// Name
LineNr := FindLine('<span class="pmd_pm_name">', Page, 0);
if LineNr <> -1 then
begin
Line := Page.GetString(LineNr);
Item := TextBetween (Line, '<span class="pmd_pm_name">', '</span><br>');
DeleteTags (Item);
Item := AnsiUpFirstLetter(Item );
HTMLDecode(Item);
SetField(fieldOriginalTitle, Trim (Item));
SetField(fieldTranslatedTitle,(Item));
end;
// Description1
LineNr := FindLine('<span class="pmd_pm_name">', Page, 0);
if LineNr > 0 then
begin
Item := copy(Page.Text, pos('<span class="pmd_pm_name">',Page.Text), length(Page.Text));
Item := TextBetween (Item, '<span class="pmd_body1"><b>', '</p></td>');
Item := StringReplace(Item ,#13#10, '');
Item := StringReplace(Item , '<br />',#13#10);
Item := StringReplace(Item , ' <b>','');
Item := StringReplace(Item , ' Playboy Playmate Pic and Data Sheet','');
Item := StringReplace(Item , '</b><br>',#13#10);
DeleteTags (Item);
Item := Trim(Item );
HTMLDecode(Item);
Item := StringReplace(Item , ' ','');
Item := StringReplace(Item , ' ','');
Item := Reemplazar (Item);
SetField(fieldActors, Trim (Item));
end;
// Description2
LineNr := FindLine('href="http://tours.', Page, 0);
if LineNr > 0 then
begin
Item := copy(Page.Text, pos('href="http://tours.',Page.Text), length(Page.Text));
Item := TextBetween (Item, 'class="pmd_boldblue">', '</tr>');
Item := StringReplace(Item ,#13#10, '');
DeleteTags (Item);
Item := Trim(Item );
HTMLDecode(Item);
Item := StringReplace(Item , ' ',#13#10);
Item := StringReplace(Item , ' ',#13#10);
Item := StringReplace(Item , ' ',#13#10);
Item := StringReplace(Item , ' ','');
Item := Reemplazar (Item);
SetField(fieldDescription, Trim (Item));
end;
end;
//-------------------------------------------------------------------------
begin
if (CheckVersion(3,5,0)=FALSe) then
begin
ShowMessage('Se requiere Ant Movie Catalog versión 3.5 o superior');
exit;
end;
MovieName := GetField(fieldOriginalTitle);
if MovieName = '' then
MovieName := GetField(fieldTranslatedTitle);
Input('Playmates', 'Search:', MovieName);
if(GetOption('No results') = 0) then Input('Playmates', 'Search:', MovieName);
AnalyzePage('http://www.google.es/search?num=100&hl=es&as_qdr=all&q=allintitle%3A++%22' + UrlEncode(MovieName)+'%22+site%3Awww.playboy.com%2Fgirls%2Fplaymates%2F&btnG=B%C3%BAsqueda&meta=');
end.
PlayboyBiographyCybergirls(ES)
--------------------------------------------------
Code: Select all
(***************************************************
Ant Movie Catalog importation script
www.antp.be/software/moviecatalog/
[Infos]
Authors=Legrad
Title=PlayboyBiography-Cybergirls
Description=
Site=www.playboy.com
Language=ES
Version=1.0
Requires=3.5.0
Comments=
License=
GetInfo=1
[Options]
***************************************************)
program PlayboyBiographyCybergirls;
var
MovieName: string;
MovieURL: string;
//---------------------------------------------------------
function BorraComillas(var S: string): string;
var
n,len, tag: Integer;
c: char;
t: String;
begin
tag := 0;
t := '';
len := length(s);
for n :=1 to len do
begin
c := Copy(s,n,1);
if c = '''' then
c := ' ';
t := t + c;
end
s := t;
result := t;
end;
//------------------------------------------------------------------
function FindLine(Pattern: string; List: TStringList; StartAt: Integer): Integer;
var
i: Integer;
begin
Result := -1;
if StartAt < 0 then
StartAt := 0;
for i := StartAt to List.Count-1 do
if Pos(Pattern, List.GetString(i)) <> 0 then
begin
Result := i;
Break;
end;
end;
//------------------------------------------------------------------------------------
function TextBetween(var S: string; StartTag: string; EndTag: string): string;
var
InitialPos: Integer;
begin
InitialPos := Pos(StartTag, S);
if InitialPos = 0 then
result := ''
else
begin
Delete(S, 1, InitialPos + Length(StartTag) - 1);
InitialPos := Pos(EndTag, S);
if InitialPos = 0 then
result := S
else
begin
result := copy(S, 1, InitialPos - 1);
Delete(S, 1, InitialPos + 1);
end;
end;
end;
//------------------------------------------------------------------------------------
function DeleteTags(var S: string): string;
var
n,len, tag: Integer;
c: char;
t: String;
begin
tag := 0;
t := '';
len := length(s);
for n :=1 to len do
begin
c := Copy(s,n,1);
if c = #9 then
c := ' ';
if(tag=1) then
begin
if(c='>') then tag := 0;
continue;
end
else
begin
if(c='<') then
begin
tag := 1;
continue;
end;
t := t + c;
end;
end
s := t;
result := t;
end;
//------------------------------------------------------------------------------------
function Reemplazar(Cadena: string) :string;
begin
Cadena := StringReplace(Cadena, 'BIRTHPLACE','LUGAR DE NACIMIENTO');
Cadena := StringReplace(Cadena, 'BUST','BUSTO');
Cadena := StringReplace(Cadena, 'WAIST','CINTURA');
Cadena := StringReplace(Cadena, 'HIPS','CADERAS');
Cadena := StringReplace(Cadena, 'HEIGHT','ALTURA');
Cadena := StringReplace(Cadena, 'WEIGHT','PESO');
Cadena := StringReplace(Cadena, 'Birthplace','LUGAR DE NACIMIENTO');
Cadena := StringReplace(Cadena, 'Bust','BUSTO');
Cadena := StringReplace(Cadena, 'Waist','CINTURA');
Cadena := StringReplace(Cadena, 'Hips','CADERAS');
Cadena := StringReplace(Cadena, 'Height','ALTURA');
Cadena := StringReplace(Cadena, 'Weight','PESO');
Cadena := StringReplace(Cadena, 'Measurements','DIMENSIONES');
Cadena := StringReplace(Cadena, 'Date of Birth','FECHA DE NACIMIENTO');
Cadena := StringReplace(Cadena, 'AMBITIONS','AMBICIONES');
Cadena := StringReplace(Cadena, 'TURN-ONS','GUSTOS');
Cadena := StringReplace(Cadena, 'TURNOFFS','INCLINACIONES');
Cadena := StringReplace(Cadena, 'WHEN I WAS YOUNGER','CUANDO ERA MENOR');
Cadena := StringReplace(Cadena, 'THEN I LEARNED','ADEMAS APRENDI');
Cadena := StringReplace(Cadena, 'NOW I KNOW','HOY DIA SE');
Cadena := StringReplace(Cadena, 'FAVORITE APPLIANCES','APARATOS PREFERIDOS');
Cadena := StringReplace(Cadena, 'WHAT MEN DO BETTER THAN WOMEN','LO QUE HACEN MEJOR LOS HOMBRES QUE LAS MUJERES');
Cadena := StringReplace(Cadena, 'PERSONAL PHOBIA','FOBIAS');
Cadena := StringReplace(Cadena, 'FAVORITE VIDEO','VIDEO PREFERIDO');
Cadena := StringReplace(Cadena, 'DREAM TREK','VIAJE SOÑADO');
Cadena := StringReplace(Cadena, 'THE MAN I LOVE','EL HOMBRE QUE AMO');
Cadena := StringReplace(Cadena, 'NO ONE WOULD BELIEVE','NADIE CREE');
Cadena := StringReplace(Cadena, 'ALL I WANT FOR CHRISTMAS','LO QUE QUIERO EN NAVIDAD');
Cadena := StringReplace(Cadena, 'FAVORITE AUTHORS','AUTORES PREFERIDOS');
Cadena := StringReplace(Cadena, 'FAVORITE STIMULANT','ESTIMULANTE PREFERIDO');
Cadena := StringReplace(Cadena, 'SELF-DESCRIPTION','Auto-DESCRIPCIÓN');
Cadena := StringReplace(Cadena, 'LOVE HINT','INDICIO DE AMOR');
Cadena := StringReplace(Cadena, 'ULTIMATE GOAL','OBJETIVO FINAL');
Cadena := StringReplace(Cadena, 'FAVORITE BOOKS','LIBROS PREFERIDOS');
Cadena := StringReplace(Cadena, 'FAVORITE PERFORMERS','ACTORES PREFERIDOS');
Cadena := StringReplace(Cadena, 'FAVORITE SPORTS','DEPORTES PREFERIDOS');
Cadena := StringReplace(Cadena, 'IDEAL MAN','HOMBRE IDEAL');
Cadena := StringReplace(Cadena, 'SECRET FANTASY','FANTASIA SECRETA');
Cadena := StringReplace(Cadena, 'NOTE','NOTA');
Cadena := StringReplace(Cadena, 'EVERY WOMAN SHOULD HAVE','TODA MUJER DEBERÍA TENER');
Cadena := StringReplace(Cadena, 'FAVORITE OUTDOOR ACTIVITIES','ACTIVIDADES AL AIRE LIBRE PREFERIDAS');
Cadena := StringReplace(Cadena, 'FAVORITE MOVIE AND WHY','PELICULA PREFERIDA');
Cadena := StringReplace(Cadena, 'PLACES I WANT TO VISIT AND WHY','LUGARES QUE QUIERO VISITAR');
result := Cadena;
end;
//---------------------------------------------------------------------
procedure AnalyzePage(Address: string);
var
strPage,MovieAddr,MovieTitle,MovieID: string;
BeginPos,EndPos: Integer;
begin
strPage := GetPage(Address);
BeginPos := Pos('en el dominio <b>www.playboy.com/girls', strPage);
if(BeginPos > -1)then
begin
PickTreeClear;
Delete(strPage, 1, BeginPos);
BeginPos := Pos('ref="http://www.playboy.com/girls/cybergirls/', strPage);
EndPos := 1;
while ((BeginPos > 0) and (EndPos > 0)) do
begin
Delete(strPage, 1, BeginPos);
EndPos := Pos('" class', strPage);
MovieId := Copy(strPage,+45, EndPos-45);
BorraComillas(MovieId);
MovieAddr := 'http://www.playboy.com/girls/cybergirls/' + MovieId;
BeginPos := Pos(')"',strPage);
EndPos := Pos('</h2>', strPage);
MovieTitle := Copy(strPage,BeginPos, EndPos);
MovieTitle := TextBetween(MovieTitle , '>', 'Nude');
//MovieTitle := AnsiUpFirstLetter(MovieTitle);
DeleteTags(MovieTitle);
PickTreeAdd(MovieTitle,MovieAddr);
BeginPos := Pos('ref="http://www.playboy.com/girls/cybergirls/', strPage);
if(Pos('</body>', strPage) < BeginPos) then
BeginPos := -1;
end;
PickTreeSort;
end;
PickTreeExec(Address);
AnalyzeMoviePage(Address);
end;
//------------------------------------------------------------------------------------
procedure AnalyzeMoviePage(Address: string);
var
Page: TStringList;
LineNr: Integer;
Line: string;
Item: string;
URL: string;
Comments: string;
Actors: string;
Directors: string;
Description: string;
Busca: integer;
begin
// URL
SetField(fieldURL, Address);
Page := TStringList.Create;
Page.Text := GetPage(Address);
//photo
LineNr := FindLine('url=http://www.playboy.com/girls/cybergirls/', Page, 0);
if LineNr <> -1 then
begin
Line := Page.GetString(LineNr);
Busca := FindLine('-large1', Page, 0);
if Busca <> -1 then
begin
Item := TextBetween (Line, 'url=http://www.playboy.com/girls/cybergirls/', '" target');
GetPicture ('http://www.playboy.com/girls/cybergirls/'+Item+'-large1.jpg');
end
else
begin
Item := TextBetween (Line, 'src="', '" alt');
GetPicture ('http://www.playboy.com/girls/cybergirls/'+Item+'-medium1.jpg');
end
end;
// MEDITYPE
SetField(fieldMediaType, ('Cybergirls'));
// Name
LineNr := FindLine('<!--tab 3 text -->', Page, 0);
if LineNr > 0 then
begin
Item := copy(Page.Text, pos('<!--tab 3 text -->',Page.Text), length(Page.Text));
Item := TextBetween (Item, '<!--tab 3 text -->', '<br />');
Item := StringReplace(Item ,#13#10,'');
DeleteTags (Item);
Item := AnsiUpFirstLetter(Item );
HTMLDecode(Item);
SetField(fieldOriginalTitle, Trim (Item));
SetField(fieldTranslatedTitle,(Item));
end;
// Description1
LineNr := FindLine('<!--tab 3 text -->', Page, 0);
if LineNr > 0 then
begin
Item := copy(Page.Text, pos('<!--tab 3 text -->',Page.Text), length(Page.Text));
Item := TextBetween (Item, '<br />', '<!--END tab 3 text -->');
Item := StringReplace(Item ,#13#10, '');
Item := StringReplace(Item ,'<br />',#13#10);
DeleteTags (Item);
Item := Trim(Item );
HTMLDecode(Item);
Item := Reemplazar (Item);
SetField(fieldActors, Trim ('LUGAR DE NACIMIENTO: '+Item));
end;
// Description2
LineNr := FindLine('<!--tab 2 text -->', Page, 0);
if LineNr > 0 then
begin
Item := copy(Page.Text, pos('<!--tab 2 text -->',Page.Text), length(Page.Text));
Item := TextBetween (Item, '<!--tab 2 text -->', '<!--END tab 2 text-->');
Item := StringReplace(Item ,#13#10,'');
DeleteTags (Item);
Item := Trim(Item );
HTMLDecode(Item);
Item := Reemplazar (Item);
SetField(fieldDescription, Trim (Item));
end;
// Video
LineNr := FindLine('url=http://www.playboy.com/girls/cybergirls/', Page, 0);
if LineNr <> -1 then
begin
Line := Page.GetString(LineNr);
Item := TextBetween (Line, 'url=http://www.playboy.com/girls/cybergirls/', '" target');
SetField(fieldComments, Trim ('Acceso directo al video:'+#13#10+'http://www.playboy.com/girls/cybergirls/'+Item+'-player.swf'));
end;
end;
//-------------------------------------------------------------------------
begin
if (CheckVersion(3,5,0)=FALSe) then
begin
ShowMessage('Se requiere Ant Movie Catalog versión 3.5 o superior');
exit;
end;
MovieName := GetField(fieldOriginalTitle);
if MovieName = '' then
MovieName := GetField(fieldTranslatedTitle);
Input('Cybergirls', 'Search:', MovieName);
if(GetOption('No results') = 0) then Input('Cybergirls', 'Search:', MovieName);
AnalyzePage('http://www.google.es/search?num=100&hl=es&as_qdr=all&q=allintitle%3A++%22' + UrlEncode(MovieName)+'%22+site%3Awww.playboy.com%2Fgirls%2FCybergirls%2F&btnG=B%C3%BAsqueda&meta=');
end.
PlayboyBiographyCoeds(ES)
-------------------------------------------
Code: Select all
(***************************************************
Ant Movie Catalog importation script
www.antp.be/software/moviecatalog/
[Infos]
Authors=Legrad
Title=PlayboyBiography-Coeds
Description=
Site=www.playboy.com
Language=ES
Version=1.0
Requires=3.5.0
Comments=
License=
GetInfo=1
[Options]
***************************************************)
program PlayboyBiographyCoeds;
var
MovieName: string;
MovieURL: string;
//---------------------------------------------------------
function BorraComillas(var S: string): string;
var
n,len, tag: Integer;
c: char;
t: String;
begin
tag := 0;
t := '';
len := length(s);
for n :=1 to len do
begin
c := Copy(s,n,1);
if c = '''' then
c := ' ';
t := t + c;
end
s := t;
result := t;
end;
//------------------------------------------------------------------
function FindLine(Pattern: string; List: TStringList; StartAt: Integer): Integer;
var
i: Integer;
begin
Result := -1;
if StartAt < 0 then
StartAt := 0;
for i := StartAt to List.Count-1 do
if Pos(Pattern, List.GetString(i)) <> 0 then
begin
Result := i;
Break;
end;
end;
//------------------------------------------------------------------------------------
function TextBetween(var S: string; StartTag: string; EndTag: string): string;
var
InitialPos: Integer;
begin
InitialPos := Pos(StartTag, S);
if InitialPos = 0 then
result := ''
else
begin
Delete(S, 1, InitialPos + Length(StartTag) - 1);
InitialPos := Pos(EndTag, S);
if InitialPos = 0 then
result := S
else
begin
result := copy(S, 1, InitialPos - 1);
Delete(S, 1, InitialPos + 1);
end;
end;
end;
//------------------------------------------------------------------------------------
function DeleteTags(var S: string): string;
var
n,len, tag: Integer;
c: char;
t: String;
begin
tag := 0;
t := '';
len := length(s);
for n :=1 to len do
begin
c := Copy(s,n,1);
if c = #9 then
c := ' ';
if(tag=1) then
begin
if(c='>') then tag := 0;
continue;
end
else
begin
if(c='<') then
begin
tag := 1;
continue;
end;
t := t + c;
end;
end
s := t;
result := t;
end;
//------------------------------------------------------------------------------------
function Reemplazar(Cadena: string) :string;
begin
Cadena := StringReplace(Cadena, 'BIRTHPLACE','LUGAR DE NACIMIENTO');
Cadena := StringReplace(Cadena, 'BUST','BUSTO');
Cadena := StringReplace(Cadena, 'WAIST','CINTURA');
Cadena := StringReplace(Cadena, 'HIPS','CADERAS');
Cadena := StringReplace(Cadena, 'HEIGHT','ALTURA');
Cadena := StringReplace(Cadena, 'WEIGHT','PESO');
Cadena := StringReplace(Cadena, 'Birthplace','LUGAR DE NACIMIENTO');
Cadena := StringReplace(Cadena, 'Bust','BUSTO');
Cadena := StringReplace(Cadena, 'Waist','CINTURA');
Cadena := StringReplace(Cadena, 'Hips','CADERAS');
Cadena := StringReplace(Cadena, 'Height','ALTURA');
Cadena := StringReplace(Cadena, 'Weight','PESO');
Cadena := StringReplace(Cadena, 'Measurements','DIMENSIONES');
Cadena := StringReplace(Cadena, 'Date of Birth','FECHA DE NACIMIENTO');
Cadena := StringReplace(Cadena, 'AMBITIONS','AMBICIONES');
Cadena := StringReplace(Cadena, 'TURN-ONS','GUSTOS');
Cadena := StringReplace(Cadena, 'TURNOFFS','INCLINACIONES');
Cadena := StringReplace(Cadena, 'WHEN I WAS YOUNGER','CUANDO ERA MENOR');
Cadena := StringReplace(Cadena, 'THEN I LEARNED','ADEMAS APRENDI');
Cadena := StringReplace(Cadena, 'NOW I KNOW','HOY DIA SE');
Cadena := StringReplace(Cadena, 'FAVORITE APPLIANCES','APARATOS PREFERIDOS');
Cadena := StringReplace(Cadena, 'WHAT MEN DO BETTER THAN WOMEN','LO QUE HACEN MEJOR LOS HOMBRES QUE LAS MUJERES');
Cadena := StringReplace(Cadena, 'PERSONAL PHOBIA','FOBIAS');
Cadena := StringReplace(Cadena, 'FAVORITE VIDEO','VIDEO PREFERIDO');
Cadena := StringReplace(Cadena, 'DREAM TREK','VIAJE SOÑADO');
Cadena := StringReplace(Cadena, 'THE MAN I LOVE','EL HOMBRE QUE AMO');
Cadena := StringReplace(Cadena, 'NO ONE WOULD BELIEVE','NADIE CREE');
Cadena := StringReplace(Cadena, 'ALL I WANT FOR CHRISTMAS','LO QUE QUIERO EN NAVIDAD');
Cadena := StringReplace(Cadena, 'FAVORITE AUTHORS','AUTORES PREFERIDOS');
Cadena := StringReplace(Cadena, 'FAVORITE STIMULANT','ESTIMULANTE PREFERIDO');
Cadena := StringReplace(Cadena, 'SELF-DESCRIPTION','Auto-DESCRIPCIÓN');
Cadena := StringReplace(Cadena, 'LOVE HINT','INDICIO DE AMOR');
Cadena := StringReplace(Cadena, 'ULTIMATE GOAL','OBJETIVO FINAL');
Cadena := StringReplace(Cadena, 'FAVORITE BOOKS','LIBROS PREFERIDOS');
Cadena := StringReplace(Cadena, 'FAVORITE PERFORMERS','ACTORES PREFERIDOS');
Cadena := StringReplace(Cadena, 'FAVORITE SPORTS','DEPORTES PREFERIDOS');
Cadena := StringReplace(Cadena, 'IDEAL MAN','HOMBRE IDEAL');
Cadena := StringReplace(Cadena, 'SECRET FANTASY','FANTASIA SECRETA');
Cadena := StringReplace(Cadena, 'NOTE','NOTA');
Cadena := StringReplace(Cadena, 'EVERY WOMAN SHOULD HAVE','TODA MUJER DEBERÍA TENER');
Cadena := StringReplace(Cadena, 'FAVORITE OUTDOOR ACTIVITIES','ACTIVIDADES AL AIRE LIBRE PREFERIDAS');
Cadena := StringReplace(Cadena, 'FAVORITE MOVIE AND WHY','PELICULA PREFERIDA');
Cadena := StringReplace(Cadena, 'PLACES I WANT TO VISIT AND WHY','LUGARES QUE QUIERO VISITAR');
result := Cadena;
end;
//---------------------------------------------------------------------
procedure AnalyzePage(Address: string);
var
strPage,MovieAddr,MovieTitle,MovieID: string;
BeginPos,EndPos: Integer;
begin
strPage := GetPage(Address);
BeginPos := Pos('en el dominio <b>www.playboy.com', strPage);
if(BeginPos > -1)then
begin
PickTreeClear;
Delete(strPage, 1, BeginPos);
BeginPos := Pos('href="http://www.playboy.com/girls/coeds/', strPage);
EndPos := 1;
while ((BeginPos > 0) and (EndPos > 0)) do
begin
Delete(strPage, 1, BeginPos);
EndPos := Pos('" class', strPage);
MovieId := Copy(strPage,+41, EndPos-41);
BorraComillas(MovieId);
MovieAddr := 'http://www.playboy.com/girls/coeds/' + MovieId;
BeginPos := Pos(')">',strPage);
EndPos := Pos('</h2>', strPage);
MovieTitle := Copy(strPage,BeginPos, EndPos);
MovieTitle := TextBetween(MovieTitle , '<b>', '-');
DeleteTags(MovieTitle);
PickTreeAdd(MovieTitle,MovieAddr);
BeginPos := Pos('href="http://www.playboy.com/girls/coeds/', strPage);
if(Pos('</body>', strPage) < BeginPos) then
BeginPos := -1;
end;
PickTreeSort;
end;
PickTreeExec(Address);
AnalyzeMoviePage(Address);
end;
//------------------------------------------------------------------------------------
procedure AnalyzeMoviePage(Address: string);
var
Page: TStringList;
LineNr: Integer;
Line: string;
Item: string;
URL: string;
Comments: string;
Actors: string;
Directors: string;
Description: string;
Busca: integer;
begin
// URL
SetField(fieldURL, Address);
Page := TStringList.Create;
Page.Text := GetPage(Address);
//photo
LineNr := FindLine('url=http://www.playboy.com/girls/coeds/', Page, 0);
if LineNr <> -1 then
begin
Line := Page.GetString(LineNr);
Busca := FindLine('-large1', Page, 0);
if Busca <> -1 then
begin
Item := TextBetween (Line, 'url=http://www.playboy.com/girls/coeds/', '" target');
GetPicture ('http://www.playboy.com/girls/coeds/'+Item+'-large1.jpg');
end
else
begin
Item := TextBetween (Line, 'src="', '" alt');
GetPicture ('http://www.playboy.com/girls/coeds/'+Item+'-medium1.jpg');
end
end;
// MEDITYPE
SetField(fieldMediaType, ('Coeds'));
// Name
LineNr := FindLine('<!--tab 3 text -->', Page, 0);
if LineNr > 0 then
begin
Item := copy(Page.Text, pos('<!--tab 3 text -->',Page.Text), length(Page.Text));
Item := TextBetween (Item, 'NAME: ', '<br />');
Item := StringReplace(Item ,#13#10,'');
DeleteTags (Item);
Item := AnsiUpFirstLetter(Item );
HTMLDecode(Item);
SetField(fieldOriginalTitle, Trim (Item));
SetField(fieldTranslatedTitle,(Item));
end;
// Description1
LineNr := FindLine('<!--tab 3 text -->', Page, 0);
if LineNr > 0 then
begin
Item := copy(Page.Text, pos('<!--tab 3 text -->',Page.Text), length(Page.Text));
Item := TextBetween (Item, '<br />', '<!--END tab 3 text -->');
Item := StringReplace(Item ,#13#10, '');
Item := StringReplace(Item ,'<br />',#13#10);
DeleteTags (Item);
Item := Trim(Item );
HTMLDecode(Item);
Item := Reemplazar (Item);
SetField(fieldActors, Trim (Item));
end;
// Description2
LineNr := FindLine('<!--tab 2 text -->', Page, 0);
if LineNr > 0 then
begin
Item := copy(Page.Text, pos('<!--tab 2 text -->',Page.Text), length(Page.Text));
Item := TextBetween (Item, '<!--tab 2 text -->', '<!--END tab 2 text-->');
Item := StringReplace(Item ,#13#10,'');
DeleteTags (Item);
Item := Trim(Item );
HTMLDecode(Item);
Item := Reemplazar (Item);
SetField(fieldDescription, Trim (Item));
end;
// Video
LineNr := FindLine('url=http://www.playboy.com/girls/cybergirls/', Page, 0);
if LineNr <> -1 then
begin
Line := Page.GetString(LineNr);
Item := TextBetween (Line, 'url=http://www.playboy.com/girls/cybergirls/', '" target');
SetField(fieldComments, Trim ('Acceso directo al video:'+#13#10+'http://www.playboy.com/girls/cybergirls/'+Item+'-player.swf'));
end;
end;
//-------------------------------------------------------------------------
begin
if (CheckVersion(3,5,0)=FALSe) then
begin
ShowMessage('Se requiere Ant Movie Catalog versión 3.5 o superior');
exit;
end;
MovieName := GetField(fieldOriginalTitle);
if MovieName = '' then
MovieName := GetField(fieldTranslatedTitle);
Input('Cybergirls', 'Search:', MovieName);
if(GetOption('No results') = 0) then Input('Cybergirls', 'Search:', MovieName);
AnalyzePage('http://www.google.es/search?num=100&hl=es&as_qdr=all&q=allintitle%3A++%22' + UrlEncode(MovieName)+'%22+site%3Awww.playboy.com%2Fgirls%2FCoeds%2F&btnG=B%C3%BAsqueda&meta=');
end.