Posted: 2007-04-13 18:46:46
the site moviemeter has change his look.
Also the rating are not ok anymore.
I don't now how many raiting they are using.
Also the rating are not ok anymore.
I don't now how many raiting they are using.
Official Forum
https://forum.antp.be/phpbb3/
That's even better... Again I replaced my version with yours in my .rar so now there's only one version to download.antp wrote:Thanks
I kept both name in "authors" in the version included on my server.
Maybe this will help?vlada_sk8 wrote:Something is wrong with moviegoods.com script! i thing that search line was change!! Cheers
Code: Select all
program MOVIEGOODS;
var
MovieName: string;
MovieURL: string;
ImageURL: string;
ImageName: string;
// STRING PROCEDURES (don't delete any part of this)
procedure CutAfter(var Str: string; Pattern: string);
begin
Str := Copy(str, Pos(Pattern, Str) + Length(Pattern), Length(Str));
end;
procedure CutBefore(var Str: string; Pattern: string);
begin
Str := Copy(Str, Pos(Pattern, Str), Length(Str));
end;
// GetStringFromHTML funtion
function GetStringFromHTML(Page, StartTag, CutTag, EndTag: string): string;
begin
Result := '';
if Pos(StartTag, Page) > 0 then begin
CutBefore(Page, StartTag);
if Length(CutTag) > 0 then
CutAfter(Page, CutTag);
Result := Copy(Page, 0, Pos(EndTag, Page) - 1);
HTMLDecode(Result);
end;
end;
// END OF STRING PROCEDURES
// Anaylze main title
procedure AnalyzePage(Address: string);
var
Page: TStringList;
begin
Page := TStringList.Create;
Page.Text := GetPage(Address);
if pos('<table width="100%" height="100%">', Page.Text) = 0 then
begin
ShowMessage('Sorry no cover available!');
end else
begin
PickTreeClear;
PickTreeAdd('Search results', '');
AddMoviesTitles(Page);
if PickTreeExec(Address) then
AnalyzePage2(Address);
end;
Page.Free;
end;
// Analyze exist posters for the main title
procedure AnalyzePage2(Address: string);
var
Page: TStringList;
URL: string;
begin
Page := TStringList.Create;
Page.Text := GetPage(Address);
PickTreeClear;
PickTreeAdd('Available Poster Types', '');
AddMoviesTitles2(Page);
if PickTreeExec(Address) then
GetPicture (Address);
Page.Free;
end;
// Add the name of the searched movies
procedure AddMoviesTitles(ResultsPage: TStringList);
var
Page: string;
MovieTitle, MovieAddress: string;
begin
Page := ResultsPage.Text;
while Pos('<table width="100%" height="100%">', Page) > 0 do
begin
CutBefore(Page, '<table width="100%" height="100%">');
MovieAddress := GetStringFromHTML(Page, 'a href="', 'href="', '"');
MovieTitle := GetStringFromHTML(Page, '<b>', '', '</b>');
ImageURL:= 'http://www.moviegoods.com/Assets/product_images/1000/'+GetStringFromHTML(Page, 'width="120"><img src="', 'src="', '"');
CutAfter(Page, '</a>');
MovieAddress := StringReplace(MovieAddress, '1000.A', '1020.A');
HTMLRemoveTags(MovieTitle);
PickTreeAdd(MovieTitle, MovieAddress+ImageURL);
end;
end;
// add the poster names for the searched title
procedure AddMoviesTitles2(ResultsPage: TStringList);
var
Page: string;
MovieTitle, MovieAddress: string;
begin
Page := ResultsPage.Text;
while Pos('<INPUT TYPE="HIDDEN" NAME="DSP_IMAGE" VALUE="', Page) > 0 do
begin
CutBefore(Page, '<INPUT TYPE="HIDDEN" NAME="DSP_IMAGE" VALUE="');
MovieAddress := 'http://www.moviegoods.com/Assets/product_images/1000/'+GetStringFromHTML(Page, '<INPUT TYPE="HIDDEN" NAME="DSP_IMAGE" VALUE="', 'UE="', '">');
MovieTitle := GetStringFromHTML(Page, 'border=2 ALT=', '"', '></A>');
MovieAddress := StringReplace(MovieAddress, '1000.A', '1020.A');
CutAfter(Page, '">');
HTMLRemoveTags(MovieTitle);
PickTreeAdd(MovieTitle, MovieAddress);
end;
end;
begin
if CheckVersion(3,5,0) then
begin
MovieName := GetField(fieldOriginalTitle);
if MovieName = '' then
MovieName := GetField(fieldTranslatedTitle);
if Input('MovieGoods Poster Import 0.3', 'Please enter English title:', MovieName) then
begin
AnalyzePage('http://search.moviegoods.com/search?w='+UrlEncode(MovieName)+'&Go2.x=0&Go2.y=0');
end;
end
else
ShowMessage('This script requires a newer version of Ant Movie Catalog (at least the version 3.5.0)');
end.
At first a big THX to the creators of this stuff!antp wrote:1. For me the latest version of the IMDB script ( www.antp.be/temp/scripts ) seems to work.
Code: Select all
AnalyzeResultsPage('http://www.moviemeter.nl/?search&q='+UrlEncode(MovieName));
Code: Select all
AnalyzeResultsPage('http://www.moviemeter.nl/film/search/'+UrlEncode(MovieName));
Code: Select all
Line := TextBetween(Page.Text, 'class="filmresults_row1">', '<form action="http://www.moviemeter.nl/film/search/"');
Code: Select all
if Pos('Zoekresultaten in films:', Page.Text) > 0 then
Line := TextBetween(Page.Text, 'Zoekresultaten in films:</p>', '<form action="http://www.moviemeter.nl/film/search/"');
if Pos('Alle zoekresultaten in films:', Page.Text) > 0 then
Line := TextBetween(Page.Text, 'Alle zoekresultaten in films:</p>', '<form action="http://www.moviemeter.nl/film/search/"');
Line := TextBetween(Line, '</p></div>', '<p><br /></p>');