//Get ~origtitle~
curPos:=Pos('
Título original',HTML)+Length('
Título original');//WEB_SPECIFIC
curPos:=PosFrom('
',HTML,curPos)+Length('');
if (0',HTML,curPos)) then begin
endPos:=PosFrom('',HTML,curPos); //WEB_SPECIFIC
end else begin
endPos:=PosFrom('',HTML,curPos); //WEB_SPECIFIC
end;
ItemValue:=Copy(HTML,curPos,endPos - curPos);
if Length(ItemValue)=LastPos(' ',ItemValue) then ItemValue:=Copy(ItemValue,1,Length(ItemValue)-1); //WEB_SPECIFIC
AddFieldValueXML('origtitle',ItemValue);
LogMessage(' Get result origtitle:'+ItemValue+'||');
//Get ~year~
//Roundabout for the spanish letter of 'Año'. Some user see as '
Ano'
HTML:=StringReplace(HTML,'
Ano','
Año',True,False,False);
curPos:=Pos('
Año',HTML)+Length('
Año'); //WEB_SPECIFIC
curPos:=PosFrom('
',HTML,curPos)+Length(''); //WEB_SPECIFIC
endPos:=PosFrom('',HTML,curPos); //WEB_SPECIFIC
ItemValue:=Copy(HTML,curPos,endPos-curPos);
AddFieldValueXML('year',ItemValue); //WEB_SPECIFIC.
LogMessage(' Get result year:'+ItemValue+'||');
//Get ~lenght~ (User option GET_LENGTH)
if GET_LENGTH then begin
curPos:=Pos('Duración',HTML)+Length('
Duración'); //WEB_SPECIFIC
curPos:=PosFrom('
',HTML,curPos)+Length(''); //WEB_SPECIFIC
endPos:=PosFrom(' min.',HTML,curPos); //WEB_SPECIFIC
ItemValue:=IntToStr(StrToInt(Copy(HTML,curPos,endPos-curPos))*60); //WEB_SPECIFIC
AddFieldValueXML('lenght',ItemValue);
LogMessage(' Get result lenght:'+ItemValue+'||');
end;
//Get ~country~ (several values in a comma separated list)(Only name in Web from !file! list)
curPos:=Pos('País',HTML)+Length('
País'); //WEB_SPECIFIC
curPos:=PosFrom('
',HTML,curPos)+Length(''); //WEB_SPECIFIC
endPos:=PosFrom('',HTML,curPos); //WEB_SPECIFIC
ItemList:=Copy(HTML,curPos,endPos-curPos);
LogMessage(' Parse results List country:'+ItemList+'||');
curPos:=Pos('title="',ItemList)+Length('title="'); //WEB_SPECIFIC
endPos:=PosFrom('">',ItemList,curPos); //WEB_SPECIFIC
ItemValue:=Copy(ItemList,curPos,endPos-curPos);
curPos:=PosFrom('title="',ItemList,endPos); //WEB_SPECIFIC
While 0',ItemList,curPos); //WEB_SPECIFIC
ItemValue:=ItemValue+','+Copy(ItemList,curPos,endPos-curPos);
curPos:=PosFrom('title="',ItemList,endPos); //WEB_SPECIFIC
LogMessage(' Parse results country:'+ItemValue+'||');
end;
AddFieldValueXML('country',ItemValue);
LogMessage(' Get results country:'+ItemValue+'||');
//Get ~Directors~, ~Writers~, ~Composers~, Photographers (Not Implemented in PVDB),~Actors~(Only name in Web)
if GET_CREDIT then begin //User option GET_CREDIT
//Get ~Directors~ (Only name in Web from !file! list).
curPos:=Pos('Director',HTML)+Length('Director'); //WEB_SPECIFIC
curPos:=PosFrom('',HTML,curPos); //WEB_SPECIFIC
ItemList:=Copy(HTML,curPos,endPos-curPos);
LogMessage(' Parse results List Directors:'+ItemList+'||');
curPos:=Pos('',ItemList); //WEB_SPECIFIC
While 0'); //WEB_SPECIFIC
endPos:=PosFrom('',ItemList,curPos); //WEB_SPECIFIC
ItemValue:=Copy(ItemList,curPos,endPos-curPos);
if 1=Pos(' ',ItemValue) then ItemValue:=Copy(ItemValue,2,Length(ItemValue)-1); //WEB_SPECIFIC
AddMoviePerson(ItemValue,'','','',ctDirectors);
LogMessage(' Get results Directors:'+ItemValue+'||');
curPos:=PosFrom('',ItemList,endPos); //WEB_SPECIFIC
end;
//Get ~Writers~ (Only name in Web from !name! list).
curPos:=Pos('Guión',HTML); //WEB_SPECIFIC
if 0Guión'); //WEB_SPECIFIC
curPos:=PosFrom('',HTML,curPos)+Length(''); //WEB_SPECIFIC
endPos:=PosFrom('',HTML,curPos); //WEB_SPECIFIC
ItemList:=Copy(HTML,curPos,endPos-curPos);
LogMessage(' Parse results List Writers:'+ItemList+'||');
curPos:=1; //WEB_SPECIFIC
endPos:=PosFrom(', ',ItemList,curPos); //WEB_SPECIFIC
if 0=endPos then ItemValue:=Copy(ItemList,curPos,1+Length(ItemList)-curPos);
While 0Música',HTML); //WEB_SPECIFIC
if 0Música'); //WEB_SPECIFIC
curPos:=PosFrom('',HTML,curPos)+Length(''); //WEB_SPECIFIC
endPos:=PosFrom('',HTML,curPos); //WEB_SPECIFIC
ItemList:=Copy(HTML,curPos,endPos-curPos);
LogMessage(' Parse results List Composers:'+ItemList+'||');
curPos:=1; //WEB_SPECIFIC
endPos:=PosFrom(', ',ItemList,curPos); //WEB_SPECIFIC
if 0=endPos then ItemValue:=Copy(ItemList,curPos,1+Length(ItemList)-curPos);
While 0Fotografía'; //WEB_SPECIFIC
// Not Implemented in PVD
//Get ~Actors~ (Only name in Web from !file! list)
curPos:=Pos('Reparto',HTML)+Length('Reparto'); //WEB_SPECIFIC
curPos:=PosFrom('',HTML,curPos); //WEB_SPECIFIC
ItemList:=Copy(HTML,curPos,endPos-curPos);
LogMessage(' Parse results List Actors:'+ItemList+'||');
curPos:=Pos('',ItemList); //WEB_SPECIFIC
While 0'); //WEB_SPECIFIC
endPos:=PosFrom('',ItemList,curPos); //WEB_SPECIFIC
ItemValue:=Copy(ItemList,curPos,endPos-curPos);
if 1=Pos(' ',ItemValue) then ItemValue:=Copy(ItemValue,2,Length(ItemValue)-1); //WEB_SPECIFIC
AddMoviePerson(ItemValue,'','','',ctActors);
LogMessage(' Get results Actors:'+ItemValue+'||');
curPos:=PosFrom('',ItemList,endPos); //WEB_SPECIFIC
end;
end;
//Get ~studio~ (several values in a comma separated list)
curPos:=Pos('Productora',HTML); //WEB_SPECIFIC
if 0Productora'); //WEB_SPECIFIC
curPos:=PosFrom('',HTML,curPos)+Length(''); //WEB_SPECIFIC
endPos:=PosFrom('',HTML,curPos); //WEB_SPECIFIC
ItemList:=Copy(HTML,curPos,endPos-curPos);
ItemList:=StringReplace(ItemList,';',',',True,True,False); //WEB_SPECIFIC. For Conuntry coproductions.
ItemList:=StringReplace(ItemList,' /',',',True,True,False); //WEB_SPECIFIC
AddFieldValueXML('studio',ItemList);
LogMessage(' Get results studio:'+ItemList+'||');
end;
//Get ~genre~ + ~category (two fields with several values in a comma separated list)
curPos:=Pos('Género',HTML)+Length('Género'); //WEB_SPECIFIC
curPos:=PosFrom('',HTML,curPos)+Length(''); //WEB_SPECIFIC
endPos:=PosFrom('',HTML,curPos); //WEB_SPECIFIC
ItemList:=Copy(HTML,curPos,endPos-curPos);
if 0=Pos('|',ItemList) then begin //WEB_SPECIFIC
//Get ~genre~ with not ~category~ in Web "Género".
LogMessage(' Parse results List genre:'+ItemList+'||');
curPos:=Pos('">',ItemList)+Length('">'); //WEB_SPECIFIC
endPos:=PosFrom('',ItemList,curPos); //WEB_SPECIFIC
ItemValue:=Copy(ItemList,curPos,endPos-curPos);
curPos:=PosFrom('">',ItemList,endPos); //WEB_SPECIFIC
While 0'); //WEB_SPECIFIC
endPos:=PosFrom('',ItemList,curPos); //WEB_SPECIFIC
ItemValue:=ItemValue+','+Copy(ItemList,curPos,endPos-curPos);
curPos:=PosFrom('">',ItemList,endPos); //WEB_SPECIFIC
LogMessage(' Parse results Genre:'+ItemValue+'||');
end;
AddFieldValueXML('genre',ItemValue);
LogMessage(' Get results Genre:'+ItemValue+'||');
end else begin
//Get ~genre~ with ~category~ in Web "Género".
ItemList:=Copy(ItemList,1,Pos('|',ItemList)-1)
LogMessage(' Parse results List genre:'+ItemList+'||');
curPos:=Pos('&attr=rat_count&nodoc">',ItemList)+Length('&attr=rat_count&nodoc">'); //WEB_SPECIFIC
endPos:=PosFrom('',ItemList,curPos); //WEB_SPECIFIC
ItemValue:=Copy(ItemList,curPos,endPos-curPos);
curPos:=PosFrom('&attr=rat_count&nodoc">',ItemList,endPos); //WEB_SPECIFIC
While 0'); //WEB_SPECIFIC
endPos:=PosFrom('',ItemList,curPos); //WEB_SPECIFIC
ItemValue:=ItemValue+','+Copy(ItemList,curPos,endPos-curPos);
curPos:=PosFrom('">',ItemList,endPos); //WEB_SPECIFIC
LogMessage(' Parse results Genre:'+ItemValue+'||');
end;
AddFieldValueXML('genre',ItemValue);
LogMessage(' Get results Genre:'+ItemValue+'||');
//Get ~category~ with ~genre~ in Web "Género".
curPos:=Pos('Género',HTML)+Length('Género'); //WEB_SPECIFIC
curPos:=PosFrom('|',HTML,curPos)+Length('|'); //WEB_SPECIFIC
endPos:=PosFrom('',HTML,curPos); //WEB_SPECIFIC
ItemList:=Copy(HTML,curPos,endPos-curPos);
LogMessage(' Parse results List Category:'+ItemList+'||');
curPos:=Pos('">',ItemList)+Length('">'); //WEB_SPECIFIC
endPos:=PosFrom('',ItemList,curPos); //WEB_SPECIFIC
ItemValue:=Copy(ItemList,curPos,endPos-curPos);
curPos:=PosFrom('">',ItemList,endPos); //WEB_SPECIFIC
While 0'); //WEB_SPECIFIC
endPos:=PosFrom('',ItemList,curPos); //WEB_SPECIFIC
ItemValue:=ItemValue+','+Copy(ItemList,curPos,endPos-curPos);
curPos:=PosFrom('">',ItemList,endPos); //WEB_SPECIFIC
LogMessage(' Parse results Category:'+ItemValue+'||');
end;
AddFieldValueXML('category',ItemValue);
LogMessage(' Get results Category:'+ItemValue+'||');
end;
//Get ~description~
curPos:=Pos('Sinopsis',HTML)+Length('Sinopsis'); //WEB_SPECIFIC
curPos:=PosFrom('',HTML,curPos)+Length(''); //WEB_SPECIFIC
endPos:=PosFrom('',HTML,curPos); //WEB_SPECIFIC
ItemValue:=Copy(HTML,curPos,endPos-curPos);
ItemValue:=StringReplace(ItemValue,'(FILMAFFINITY)','',True,True,False); //WEB_SPECIFIC
ItemValue:=RemoveTags(ItemValue,False);
AddFieldValueXML('description',ItemValue);
LogMessage(' Get result description:'+ItemValue+'||');
//Date ~Updated~ (choose simple or verbose version)
//AddCustomFieldValueByName('Updated',DateToStr(CurrentDateTime)); // Simple
//AddCustomFieldValueByName('Updated',DateToStr(CurrentDateTime)+' at '+TimeToStr(CurrentDateTime)); // Verbose
//AddCustomFieldValueByName('Updated',DateToStr(CurrentDateTime)+' at '+TimeToStr(CurrentDateTime)+' • '+SCRIPT_NAME+' '+SCRIPT_VERSION); // Annoying
Result:=prFinished;
exit;
end;
Result:=prError;
exit;
end;
//------------------------------------------------------------------------------