LineNr := FindLine('Hledaný výraz: ', Page, 0);
LineNr2 := FindLine('', Line);
if (EndPos = 0) then
EndPos := Length(Line);
// vykopiruje si adresu aktualniho filmu z radku
FilmAddr := Copy(Line, BeginPos +1, EndPos - BeginPos -1);
AnalyzeMoviePage(BaseAddress + FilmAddr + '&text=1rec=&top=&kom=1');
end;
end
else
// jinak (pokud forward neexistuje) se asi vazne jedna primo o stranku s filmem
begin
AnalyzeMoviePage(Address);
end;
end
else
begin
// zjisteni cisla radku, na kterem se naleza informace v ktere sekci nazvu hledat
oNazvy := 'v originálních názvech';
aNazvy := 'v anglických názvech';
cNazvy := 'v českých názvech';
sNazvy := 've slovenských názvech';
// tento algoritmus funguje tak, ze postupne hleda ve vsech jazykach, dokud neco nenajde
LineNr := FindLine(cNazvy, Page, 0);
i := 0;
if (LineNr = -1) then
begin
LineNr := FindLine(sNazvy, Page, 0);
i := 1;
end;
if (LineNr = -1) then
begin
LineNr := FindLine(oNazvy, Page, 0);
i := 2;
end;
if (LineNr = -1) then
LineNr := FindLine(aNazvy, Page, 0);
// pokud zadna takova sekce neexistuje - nenaslo se nic
if (LineNr = -1) then
ShowMessage('No movie found for this search.'+chr(13)+chr(13)+'Nebyly nalezeny zadne zaznamy.')
else
begin
// jinak si najdeme radku na ktere je v dane sekci odkaz na nalezeny film
LineNr := FindLine('', Line); // tady to bylo spatne, proto se nacitala ta adresa blbe
if(EndPos = 0) then
EndPos := Pos('">', Line);
if (EndPos = 0) then
EndPos := Length(Line);
// vykopiruje si adresu aktualniho filmu z tagu odkazu
FilmAddr := Copy(Line, BeginPos + 10, EndPos - BeginPos - 11);
// dekoduje specialni ceske znaky z adresy odkazu na film
HTMLDecode(FilmAddr);
// odstrani vsechny HTML TAGY
HTMLRemoveTags(FilmAddr);
// vezme konec radku identifikovany
tagem
EndPos := Pos('
', Line);
FilmAddr := FilmAddr + '&text=1';
if (EndPos = 0) then
EndPos := Length(Line);
// vykopiruje se z tagu odkazu jmeno filmu
FilmName := Copy(Line, BeginPos, EndPos - BeginPos);
HTMLDecode(FilmName);
HTMLRemoveTags(FilmName);
// hledani znacky urcujici, ze na strance je odkaz na dalsi hledani
dalsi := Copy(FilmName, 0, 25);
// jestli se na strance vyskytuje odkaz na dalsi seznam filmu
if (dalsi = '...další nalezené záznamy') then
FilmName := Copy(FilmName, 26, Length(FilmName) - 25);
if (FilmName <> '') then
PickTreeAdd(FilmName, BaseAddress + FilmAddr);
Delete(Line,1,EndPos+3);
end
else
// tohle to upravil hard-corove kecinzer, doma jen na koleni, pac delphi vubec neumi, je to humus, ja vim :)
begin
case i of
0: begin // hledam anglicky nazev, pokud nenajdu, tak hledam postupne dalsi nazvy
LineNr := FindLine(sNazvy, Page, 0);
i := 1;
if (LineNr = -1) then
begin
LineNr := FindLine(oNazvy, Page, 0);
if (LineNr = -1) then
begin
BeginPos := 0;
i := 2;
end;
end;
if (i = 1) or (i = 2) then
begin
LineNr := FindLine(' -1) then
begin
Line := Page.GetString(LineNr);
BeginPos := pos('table background="http://img.csfd.cz/posters', Line) + 18;
if (BeginPos > 10) then
begin
EndPos := pos('" border="', Line);
Value := copy(Line, BeginPos, EndPos - BeginPos);
GetPicture(Value);
end;
end;
// Info
// LineNr := FindLine(' ', Page, 0);
// if (LineNr > -1) then
// begin
// Line := Page.GetString(LineNr+1);
// BeginPos := pos('float:left', Line);
// EndPos := pos('', Page.GetString(LineNr));
// Value := copy(Line, BeginPos, EndPos - BeginPos);
// HTMLDecode(Value);
// HTMLRemoveTags(Value);
// if (getOption('addCZdescr') = 1) then
// SetField(fieldDescription, Trim(Value) + #13#10 + #13#10 + GetField(fieldDescription))
// else
// SetField(fieldDescription, Trim(Value));
// end
//Info
Line := UTF8Decode(GetPage(Address));
//Line := GetPage(address);
Value:=copy(Line,pos('',Line),
pos('
',Line) -
pos('',Line));
HTMLRemoveTags(Value);
HTMLDecode(Value);
SetField(fieldDescription, Value);
// URL
SetField(fieldURL, Address);
//DisplayResults;
end;
begin
// kontrola verze movie catalogu
if CheckVersion(3,5,0) then
begin
MovieName := GetField(fieldOriginalTitle);
// pokud je originalni jmeno filmu prazdne, vem jmeno prelozene
if (MovieName = '') then
MovieName := GetField(fieldTranslatedTitle);
// zadani z inputu
if Input('Import movie from www.csfd.cz', 'Enter the title of the movie:', MovieName) then
begin
// analyzuj stranku http://www.csfd.cz/search_pg.php?search=jmeno_filmu
AnalyzePage(BaseAddress + 'search_pg.php?search=' + UrlEncode(UTF8Encode(MovieName)));
end;
end
else
ShowMessage('This script requires a newer version of Ant Movie Catalog (at least the version 3.5.0)');
end.