(*************************************************** Ant Movie Catalog importation script www.antp.be/software/moviecatalog/ [Infos] Authors=O Guardião - www.o-guardiao.com Title=Clubedevideo Description=Movie importation script for Clubedevideo Site=www.clubedevideo.com Language=PT Version=1.2 (23 Fevereiro 2007) Requires=3.5.0 Comments=Script feito por O Guardião para o site "www.clubedevideo.com"|Caso detectem erros coloquem-nos no meu site: www.o-guardiao.com/forum/viewtopic.php?t=250| License=This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. | GetInfo=1 [Options] ***************************************************) program Clubedevideo; uses StringUtils1; var MovieName:string; function TrimRight(S: string): string; //Function modified by O Guardião var I: Integer; begin I := Length(S); while (I > 0) and (Copy(S,I,1) <= ' ') do i:=i-1; Result := Copy(S, 1, I); end; function HTMLRemove(Value: String): String; begin HTMLDecode(Value); HTMLRemoveTags(Value); Value := Trim(Value); result := Value; end; procedure AnalyzeFilmPage(Address: String); var Page : TStringList; BeginPos:Integer; nome_orig, traduzido, categoria, duracao, actores, distribuidor, descricao, url_capa, realizacao:string; begin Page := TStringList.Create; Page.Text := GetPage(Address); SetField(fieldURL, Address); nome_orig:=TextBetween(Page.Text,'''mod_titulos_filme2''>',''); SetField(fieldOriginalTitle, nome_orig); traduzido:=TrimRight(TextBetween(Page.Text,'Catalogo de Filmes > Ficha de Filme  ','')); traduzido:=Copy(traduzido,2,length(traduzido)-2); //tira aspas SetField(fieldTranslatedTitle,traduzido); categoria:=TextBetween(Page.Text,'Categoria: ','
'); SetField(fieldCategory, categoria); duracao:=TextBetween(Page.Text,'Duração: ','
'); duracao:=StringReplace(duracao,' min.',''); SetField(fieldLength, duracao); actores:=HTMLRemove(TextBetween(Page.Text,'Protagonistas: ','
')); SetField(fieldActors, actores); distribuidor:=TextBetween(Page.Text,'Distribuidora: ','
'); SetField(fieldProducer, distribuidor); descricao:=TrimRight(HTMLRemove(TextBetween(Page.Text,'Sinópse:',''))); SetField(fieldDescription, descricao); realizacao:=HTMLRemove(TextBetween(Page.Text,'Realização: ','
')); SetField(fieldDirector, realizacao); url_capa:='http://www.clubedevideo.com/capas/'+TextBetween(Page.Text,''); BeginPos:=Pos('>',nome); url:='http://www.clubedevideo.com/mods/ficha_filme_if.cdv'+Copy(nome,1,BeginPos-2); nome:=Copy(nome,BeginPos+1,length(nome)); BeginPos:=FindLine(url,url_lista,0); if BeginPos=-1 then begin url_lista.add(url); PickTreeAdd(nome, url); end; until (nome=''); if PickTreeExec(Address) then AnalyzeFilmPage(Address); end else showmessage('O filme não foi encontrado') Page.free; end; begin MovieName := GetField(fieldOriginalTitle); if Input('Importar do Clubedevideo', 'Escreva o nome do filme:', MovieName) then AnalyzePage('http://www.clubedevideo.com/mods/mod_pesquisa_if.cdv',UrlEncode('valor_pesquisa='+MovieName)); end.