POLAND site SCRIPTs
problemy z filmweb
Dziwne, teraz działa poprzedni skrypt, Filmweb (PL) (alpha 18). Jest to starszy skrypt, dlatego trzeba wprowadzić parę zmian. Chodzi o scenariusz, muzykę i plakat;. Należy wpisać poprawki, które podał almas (dotyczy wersji programu 4.2). oraz dotyczącą plakatu, podaną przeze mnie; i wszystko będzie ok. Pozdrawiam
Code: Select all
// Scenariusz (2013-05-10 by MaAd)
Value := GetMaterials(Page, 'role-screenwriter');
if (Length(Value) > 0) then
SetField(fieldWriter, Trim(Value));
// Muzyka (2013-05-10 by MaAd)
Value := GetMaterials(Page, 'role-music');
if (Length(Value) > 0) then
SetField(fieldComposer, Trim(Value));
Code: Select all
// Plakat
Line := TextBetween(Page.Text, '<div class=posterLightbox>', '</div>');
case GetOption('Plakat') of
1: begin
Szukane := TextBetween(Line, 'href="', '"');
// Szukane := TextBefore(Szukane, '?', '');
GetPicture(Szukane);
end;
2: begin
Szukane := TextBetween(Line, 'src="', '"');
// Szukane := TextBefore(Szukane, '?', '');
GetPicture(Szukane);
end;
end;
układ aktorów
F6 + zaznaczony skrypt filmweb.pl + po prawej Parametry skryptu wybrać UkladAktorow + w okienku Wartość dla opcji wybrać opcję 1 + OK
uruchomić skrypt
uruchomić skrypt
Marbug czytałem Twojego priva; da się zrobić, ale za kilka dni;
uściślijmy dla linku http://www.filmweb.pl/user/xxxxxxxxx/films
1. który panel: Ocenione, Chcę zobaczyć, Nie interesuje mnie czy do wyboru?
2. import do AMC tylko to co jest na panelu: tytuł polski + tytuł oryginalny + kraj + gatunek + ocena
uściślijmy dla linku http://www.filmweb.pl/user/xxxxxxxxx/films
1. który panel: Ocenione, Chcę zobaczyć, Nie interesuje mnie czy do wyboru?
2. import do AMC tylko to co jest na panelu: tytuł polski + tytuł oryginalny + kraj + gatunek + ocena
wojteos - nie ma sprawy, nie śpieszy mi się, tylko chciałem wiedzieć czy to jest wykonalne.
Mi zależy na panelu "Ocenione".
Filmów mam prawie 2700 (widok: 20/str = 135 podstron) dlatego ręczne spisywanie tego odpada - aż tak mi się nie nudzi w wolnych chwilach.
Jeszcze lepiej właśnie żeby to poszło do AMC, dodałem ostatnio kilka template'ów (mam nadzieję, że już zostały dodane do AMC) - to się przy okazji zrobi fajna lista.
Dzięki!
Mi zależy na panelu "Ocenione".
Filmów mam prawie 2700 (widok: 20/str = 135 podstron) dlatego ręczne spisywanie tego odpada - aż tak mi się nie nudzi w wolnych chwilach.
Jeszcze lepiej właśnie żeby to poszło do AMC, dodałem ostatnio kilka template'ów (mam nadzieję, że już zostały dodane do AMC) - to się przy okazji zrobi fajna lista.
Dzięki!
Re: nowy
Ten skrypt ze stycznia nie działa na mojej wersji programu (4.2). Działa tylko ten starszy, po odpowiednich przeróbkach. Nie wiem jak wrzucić tu na stronę plik tekstowy ze starym skryptem (alfa 18), ten na pewno działa poprawnie, używam go bez problemów.wojteos wrote:wysyłałem nowy skrypt
odp. dla Marburga
Skrypt jest gotowy, chciaż nie działa tak jak bym oczekiwał. Nie jest możliwe z poziomu skryptu AMC pobranie danych z jednoczesnym wysłaniem loginu użytkownika i hasła (cookie, ssl itp.); ludzie z filmwebu nie raczyli odpowiedzieć jak to zrobić [tajne/poufne].
Przygotowany skrypt wymaga nasrępujących kroków:
1. Logujemy się do filmwebu + Twoje filmy + ocenione i ustawiamy Filmów na stronie 100; w twoim przypadku to będzie chyba 37;
2. Zapisujemy po koleji wszystkie strony (w Firefoxie Ctrl+S ; Zapisz jako typ: strona WWW, kompletna), numerując je kolejno (np. 1-szy plik: wojteos - filmy - Filmweb [1]1.htm, 2-gi plik: wojteos - filmy - Filmweb [1]2.htm, itd; albo po prostu e1.htm, e2.htm itd; u ciebie ostatni plik nnnnnnn37.htm);
3. Startujemy AMC, dodajemy 1 pusty film i uruchamiamy skrypt fillmwebUser.ifs (F6 + Edytor + Ctrl+O i wgrywamy fillmwebUser.ifs + F9);
podajemy nazwę 1-szego pliku z pkt.2 z pełną ścieżką, np. c:\testAMC\wojteos - filmy - Filmweb [1]1.htm , dlatego dla wygody dobrze jest utworzyć na dysku C katalog testAMC i tam zapisać pliki;
4. Wyrzucamy pierwszy film; zaznaczamy kilka filmów (bezpieczniej niż wszystkie na raz), F6, zaznaczmy skrypt filmweb.pl i :
a) po prawej stronie na dole Pola do modyfikacji odfajczamy Ocena (chcemy zachować swoją)
b) w opcjach skryptu powyłączać ewentualnie potzrebę decyzji np. Opis filmu ustawić na 1 = Pobtać pierwszy;
c) po prawej stronie na górze Opcej wykonania odfajczamy Pokaż okno reultatów (nie będzie okna z zapisz)
i Klikamy i czekamy 3700 razy lub coś koło tego.
Jeśli niestraszna ci taka mordęga (dałoby się usunąć potwiedzanie kolejnych tytułów filmów, przecież pole Strona WWW mamy wypełnione) do dzieła.
treść skryptu
Przygotowany skrypt wymaga nasrępujących kroków:
1. Logujemy się do filmwebu + Twoje filmy + ocenione i ustawiamy Filmów na stronie 100; w twoim przypadku to będzie chyba 37;
2. Zapisujemy po koleji wszystkie strony (w Firefoxie Ctrl+S ; Zapisz jako typ: strona WWW, kompletna), numerując je kolejno (np. 1-szy plik: wojteos - filmy - Filmweb [1]1.htm, 2-gi plik: wojteos - filmy - Filmweb [1]2.htm, itd; albo po prostu e1.htm, e2.htm itd; u ciebie ostatni plik nnnnnnn37.htm);
3. Startujemy AMC, dodajemy 1 pusty film i uruchamiamy skrypt fillmwebUser.ifs (F6 + Edytor + Ctrl+O i wgrywamy fillmwebUser.ifs + F9);
podajemy nazwę 1-szego pliku z pkt.2 z pełną ścieżką, np. c:\testAMC\wojteos - filmy - Filmweb [1]1.htm , dlatego dla wygody dobrze jest utworzyć na dysku C katalog testAMC i tam zapisać pliki;
4. Wyrzucamy pierwszy film; zaznaczamy kilka filmów (bezpieczniej niż wszystkie na raz), F6, zaznaczmy skrypt filmweb.pl i :
a) po prawej stronie na dole Pola do modyfikacji odfajczamy Ocena (chcemy zachować swoją)
b) w opcjach skryptu powyłączać ewentualnie potzrebę decyzji np. Opis filmu ustawić na 1 = Pobtać pierwszy;
c) po prawej stronie na górze Opcej wykonania odfajczamy Pokaż okno reultatów (nie będzie okna z zapisz)
i Klikamy i czekamy 3700 razy lub coś koło tego.
Jeśli niestraszna ci taka mordęga (dałoby się usunąć potwiedzanie kolejnych tytułów filmów, przecież pole Strona WWW mamy wypełnione) do dzieła.
treść skryptu
Code: Select all
(*********************************************************
* *
* VERSION HISTORY *
* *
* 2.0.0.3 (13.03.2014) by wojteos *
* - edycja pierwsza *
* *
*********************************************************)
program filmwebUser;
uses
StringUtils7552;
type
TFilmUzytkownika = record
Tytul, Rok, AdresHTM, Ocena: String;
end;
var
MovieName, MAddress : String;
StrSep : String;
FilmyUzytkownika : TStringList;
// nowe zmienne
PlikUzytkownika : String;
function Czysc(napis: String): String;
begin
Result := StringReplace(napis, #9, '');
Result := StringReplace(Result, #10, '');
Result := StringReplace(Result, #13, '');
end;
procedure AnalizujFilmyUzytkownika (Nazwa1PlikuUzytkownika : String);
// przy załóżeniu że mamy pełny dostęp ustalenie limitu na stronie oraz ilości stron
// ilość filmów na ostatniej ????????????
var
Strona : TStringList;
NazwaPlik1, NazwaPlik2, strExtPlik, strNrPlik : String;
NrPlik, m : Integer;
begin // =================================== procedure AnalizujFilmyUzytkownika
Strona := TStringList.Create; // utworzenie kolekcji
strExtPlik := ExtractFileExt(Nazwa1PlikuUzytkownika);
NazwaPlik1 := Copy(Nazwa1PlikuUzytkownika, 1, Pos(strExtPlik, Nazwa1PlikuUzytkownika)-1);
// pobranie numeru pierwszego pliku
m := Length(NazwaPlik1);
while (StrGet(NazwaPlik1, m) >= '0') and (StrGet(NazwaPlik1, m) <= '9') do
begin
strNrPlik := StrGet(NazwaPlik1, m) + strNrPlik;
m := m-1;
end; // while (StrGet(NazwaPlik1, m) >= '0') and (StrGet(NazwaPlik1, m) <= '9')
NrPlik := StrToInt(strNrPlik, 0);
NazwaPlik1 := Copy(NazwaPlik1, 1, Pos(strNrPlik, NazwaPlik1)-1);
NazwaPlik2 := NazwaPlik1 + IntToStr(NrPlik) + strExtPlik;
while FileExists(NazwaPlik2) do
begin
Strona.LoadFromFile(NazwaPlik2);
PobierzDaneFilmow(Strona.Text);
NrPlik := NrPlik + 1;
NazwaPlik2 := NazwaPlik1 + IntToStr(NrPlik) + strExtPlik;
end;
Strona.Free;
end; // =================================== procedure AnalizujFilmyUzytkownika
procedure PobierzDaneFilmow(StronaHTM : String);
var
Strona : TStringList;
Linia : String;
NrLinia : Integer;
FilmId, FilmTytul, FilmAdres, FilmRok : String;
FilmUzytkownika : TFilmUzytkownika;
begin // ========================================= procedure PobierzDaneFilmow
Strona := TStringList.Create;
Strona.Text := UTF8Decode(StronaHTM);
//Jeden film w jednej linii
Strona.Text := StringReplace(Strona.Text, '<div class="voteFilmTitle', #13#10 + '<div class="voteFilmTitle');
linia:=Strona.Text;
NrLinia := FindLine('<div class=' + StrSep + 'voteFilmTitle' + StrSep + '><a href=' + StrSep + 'http://www.filmweb.pl', Strona, 0);
while NrLinia > -1 do
begin //Pobieranie tytułu i URL
Linia := Czysc(Strona.GetString(NrLinia));
FilmId := TextBetween(Linia, 'entityName=film&id=', StrSep+' target='+StrSep+'_blank');
if (Pos('<br>', Linia) > 0)
then
FilmTytul := TextBetween(Linia, 'target='+StrSep+'_blank'+StrSep+' title='+StrSep, '<br>')
else
FilmTytul := TextBetween(Linia, 'target='+StrSep+'_blank'+StrSep+' title='+StrSep, ' <div class='+StrSep+'countryLabel'+StrSep+'>');
FilmRok := TextBetween(FilmTytul, '(',')'); //Pobierania roku produkcji
FilmTytul := TextBetween(FilmTytul, '>','</a>');
FilmAdres := 'http://www.filmweb.pl/film/' + FilmTytul + '-' + FilmRok + '-' + FilmId;
FilmUzytkownika.Tytul := FilmTytul;
FilmUzytkownika.Rok := FilmRok;
FilmUzytkownika.AdresHTM := FilmAdres;
FilmUzytkownika.Ocena := TextBetween(Linia, '<div class='+StrSep+'rateText'+StrSep+'><span style='+StrSep+'font-color:#8D000;font-weight:bold'+StrSep+'>', '</span>/10</div>');
FilmTytul := FilmTytul + ' (' + FilmRok + ')';
{ Dodanie do drzewka }
if (FindLine(FilmAdres, FilmyUzytkownika, 0) < 0) then
begin
PickTreeAdd(FilmTytul, FilmAdres);
FilmyUzytkownika.Add(FilmUzytkownika.Tytul+'|'+FilmUzytkownika.Rok+'|'+FilmUzytkownika.AdresHTM+'|'+FilmUzytkownika.Ocena);
AddNewMovieToQueue;
end;
NrLinia := FindLine('<div class=' + StrSep + 'voteFilmTitle' + StrSep + '><a href=' + StrSep + 'http://www.filmweb.pl', Strona, NrLinia + 1);
end; // while NrLinia > -1
Strona.Free;
end; // ========================================= procedure PobierzDaneFilmow
function GetStringDelim(Delimiter: char; var s: string): string;
var tym_str: string; poz_sp: integer;
begin {======= function GetString =======}
poz_sp:=Pos(Delimiter,s);
if poz_sp=0 then begin
tym_str:=s; s:=''; GetStringDelim:=tym_str
end
else begin
tym_str:=Copy(s,1,poz_sp-1);
Delete(s,1,poz_sp);
s:=Trim(s);
GetStringDelim:=tym_str
end
end; {======= function GetString =======}
var
iloscNowychFilmow, nowyFilmStart, i : Integer;
strT : string;
begin
if CheckVersion(4,1,0) then begin
i:=GetIteration;
if GetIteration = 0 then begin // iteracja pierwsza
FilmyUzytkownika := TStringList.Create;
PickTreeClear;
case GetOption('StringSep') of
0: StrSep := '';
1: StrSep := '"';
end;
StrSep := '"';
PlikUzytkownika := 'y:\testamc\test1.htm';
if Input('Import filmów ocenianych na filmweb.pl', 'Podaj nazwę 1-ego pliku użytkownika: ', PlikUzytkownika) then
AnalizujFilmyUzytkownika(PlikUzytkownika);
iloscNowychFilmow := FilmyUzytkownika.Count;
end else begin//if GetIteration = 0
i:=GetIteration;
strT:=FilmyUzytkownika.GetString(i-1);
SetField(fieldTranslatedTitle, GetStringDelim('|', strT));
SetField(fieldYear, GetStringDelim('|', strT));
SetField(fieldURL, GetStringDelim('|', strT));
SetField(fieldRating, Trim(strT));
end;
end else
ShowMessage('Skrypt wymaga programu Ant Movie Catalog w wersji 4.1.0.0 lub nowszej');
end.
Wow!
Gdzie Ci piwo posłać? :-)
Dziś chyba tego nie zdążę wypróbować, chociaż spróbuję jeszcze wygospodarować chwilę, ale należy się browar za kawał roboty! Mam nadzieję, że to się nie tylko mnie przyda - program/skrypt się przyjmie i może zyskasz zasłużoną chwałę!
nawiasem - w międzyczasie próbowałem coś na własną rękę i znalazłem programy typu scraper/harvester - ale też nie miałem jeszcze czasu usiąść do nich i ich odpowiednio skonfigurować.
Jak tylko uda mi się to wykonać to dam znać. Dzięki raz jeszcze.
---
Z ciekawości nie wytrzymałem i sprawdziłem od razu.
Coś nie za bardzo mi zatrybiło.
Do momentu odpalenia skryptu wszystko ok. Odpalam - ukazuje mi się okno "wyniki skryptu filmwebUser.ifs dla filmu 1 - gdzie wybierać możemy numer, etykietę, tytuł, itp. Wszystko jest wyszarzone, brak treści - nie ma żadnych danych prócz: Numer: 1, Zaznaczone: True, Data dodania: dzisiejsza, kolor oznaczenia: 0.
Może nie kontaktuje po długim dniu, ale nie wiem czy coś źle robię?
Co bym nie kliknął to wraca mi do AMC/listy (z jednym pustym filmem).
Ścieżkę dobrze podaje (np. C:\filmweb\a01.htm). Na razie jedną stronę ze 100 filmami pobrałem - tak dla spróbowania.
Strona pobrana prawidłowo.
Skrypt skopiowałem z postu i wkleiłem do pliku, nazwałem prawidłowo, nie wiem co jeszcze...
Gdzie Ci piwo posłać? :-)
Dziś chyba tego nie zdążę wypróbować, chociaż spróbuję jeszcze wygospodarować chwilę, ale należy się browar za kawał roboty! Mam nadzieję, że to się nie tylko mnie przyda - program/skrypt się przyjmie i może zyskasz zasłużoną chwałę!
nawiasem - w międzyczasie próbowałem coś na własną rękę i znalazłem programy typu scraper/harvester - ale też nie miałem jeszcze czasu usiąść do nich i ich odpowiednio skonfigurować.
Jak tylko uda mi się to wykonać to dam znać. Dzięki raz jeszcze.
---
Z ciekawości nie wytrzymałem i sprawdziłem od razu.
Coś nie za bardzo mi zatrybiło.
Do momentu odpalenia skryptu wszystko ok. Odpalam - ukazuje mi się okno "wyniki skryptu filmwebUser.ifs dla filmu 1 - gdzie wybierać możemy numer, etykietę, tytuł, itp. Wszystko jest wyszarzone, brak treści - nie ma żadnych danych prócz: Numer: 1, Zaznaczone: True, Data dodania: dzisiejsza, kolor oznaczenia: 0.
Może nie kontaktuje po długim dniu, ale nie wiem czy coś źle robię?
Co bym nie kliknął to wraca mi do AMC/listy (z jednym pustym filmem).
Ścieżkę dobrze podaje (np. C:\filmweb\a01.htm). Na razie jedną stronę ze 100 filmami pobrałem - tak dla spróbowania.
Strona pobrana prawidłowo.
Skrypt skopiowałem z postu i wkleiłem do pliku, nazwałem prawidłowo, nie wiem co jeszcze...
nowy import ocenianych na filmweb
zmiany:
1. zapisujemy w katalogu skryptów AMC; wywołujemy przez Shift+F6
2. baza może być pusta
3. podajemy tylko katalog np. d:\testamc\ (backslash na końcu)
1. zapisujemy w katalogu skryptów AMC; wywołujemy przez Shift+F6
2. baza może być pusta
3. podajemy tylko katalog np. d:\testamc\ (backslash na końcu)
Code: Select all
(***************************************************
Ant Movie Catalog importation script
www.antp.be/software/moviecatalog/
[Infos]
Authors=wojteos
Title=fillmweb_User.ifs
Description=filmy z filmweb oceniane przez użytkownika zapisane lokalnie
Site=
Language=PL
Version=2.0.0.5
Requires=4.1.2
Comments=baza AMC może być pusta, nie tworzy duplikatów
License=
GetInfo=0
RequiresMovies=0
[Options]
[Parameters]
***************************************************)
(*********************************************************
* *
* VERSION HISTORY *
* *
* 2.0.0.4 (14.03.2014) by wojteos *
* - edycja pierwsza *
* *
*********************************************************)
program filmwebUser;
uses
StringUtils7552;
type
TFilmUzytkownika = record
Tytul, Rok, AdresHTM, Ocena: String;
end;
var
MovieName, MAddress : String;
StrSep : String;
FilmyUzytkownika : TStringList;
// nowe zmienne
PlikUzytkownika : String;
function Czysc(napis: String): String;
begin
Result := StringReplace(napis, #9, '');
Result := StringReplace(Result, #10, '');
Result := StringReplace(Result, #13, '');
end;
procedure AnalizujFilmyUzytkownika (NazwaKataloguUzytkownika : String);
// przegląda katalog użytkownika i analizuje zapisane strony filmweb w plikach htm
var
Katalog, Strona : TStringList;
NazwaPliku : String;
NrPlik, m : Integer;
strKatalog: string;
begin // =================================== procedure AnalizujFilmyUzytkownika
if not DirectoryExists(NazwaKataloguUzytkownika) then begin
ShowMessage('Brak katalogu!');
Exit;
end // brak taalogu
else begin
Katalog := TStringList.Create; // utworzenie kolekcji katalogu
Katalog.Text := ListDirectory(NazwaKataloguUzytkownika,'*.htm');
m := Katalog.Count;
if Katalog.Count=0 then begin
ShowMessage('Katalog: '+NazwaKataloguUzytkownika+' nie zawiera plików htm!');
Exit;
end // katalog nie zawiera htm
else begin
Strona := TStringList.Create; // utworzenie kolekcji strony htm
for m:=0 to Katalog.Count-1 do begin
NazwaPliku := Copy(Katalog.GetString(m), 1, Pos(#9, Katalog.GetString(m))-1) ;
Strona.LoadFromFile(NazwaPliku);
PobierzDaneFilmow(Strona.Text);
end;
Strona.Free;
Katalog.Free;
end; // są w katalogu htm
end; // jest katalog
end; // =================================== procedure AnalizujFilmyUzytkownika
procedure PobierzDaneFilmow(StronaHTM : String);
var
Strona : TStringList;
Linia : String;
NrLinia : Integer;
FilmId, FilmTytul, FilmAdres, FilmRok : String;
FilmUzytkownika : TFilmUzytkownika;
begin // ========================================= procedure PobierzDaneFilmow
Strona := TStringList.Create;
Strona.Text := UTF8Decode(StronaHTM);
//Jeden film w jednej linii
Strona.Text := StringReplace(Strona.Text, '<div class="voteFilmTitle', #13#10 + '<div class="voteFilmTitle');
linia:=Strona.Text;
NrLinia := FindLine('<div class=' + StrSep + 'voteFilmTitle' + StrSep + '><a href=' + StrSep + 'http://www.filmweb.pl', Strona, 0);
while NrLinia > -1 do
begin //Pobieranie tytułu i URL
Linia := Czysc(Strona.GetString(NrLinia));
FilmId := TextBetween(Linia, 'entityName=film&id=', StrSep+' target='+StrSep+'_blank');
if (Pos('<br>', Linia) > 0)
then
FilmTytul := TextBetween(Linia, 'target='+StrSep+'_blank'+StrSep+' title='+StrSep, '<br>')
else
FilmTytul := TextBetween(Linia, 'target='+StrSep+'_blank'+StrSep+' title='+StrSep, ' <div class='+StrSep+'countryLabel'+StrSep+'>');
FilmRok := TextBetween(FilmTytul, '(',')'); //Pobierania roku produkcji
FilmTytul := TextBetween(FilmTytul, '>','</a>');
FilmAdres := 'http://www.filmweb.pl/film/' + FilmTytul + '-' + FilmRok + '-' + FilmId;
FilmUzytkownika.Tytul := FilmTytul;
FilmUzytkownika.Rok := FilmRok;
FilmUzytkownika.AdresHTM := FilmAdres;
FilmUzytkownika.Ocena := TextBetween(Linia, '<div class='+StrSep+'rateText'+StrSep+'><span style='+StrSep+'font-color:#8D000;font-weight:bold'+StrSep+'>', '</span>/10</div>');
FilmTytul := FilmTytul + ' (' + FilmRok + ')';
{ Dodanie do drzewka }
if (FindLine(FilmAdres, FilmyUzytkownika, 0) < 0) then
begin
PickTreeAdd(FilmTytul, FilmAdres);
FilmyUzytkownika.Add(FilmUzytkownika.Tytul+'|'+FilmUzytkownika.Rok+'|'+FilmUzytkownika.AdresHTM+'|'+FilmUzytkownika.Ocena);
AddNewMovieToQueue;
end;
NrLinia := FindLine('<div class=' + StrSep + 'voteFilmTitle' + StrSep + '><a href=' + StrSep + 'http://www.filmweb.pl', Strona, NrLinia + 1);
end; // while NrLinia > -1
Strona.Free;
end; // ========================================= procedure PobierzDaneFilmow
function GetStringDelim(Delimiter: char; var s: string): string;
var tym_str: string; poz_sp: integer;
begin {======= function GetString =======}
poz_sp:=Pos(Delimiter,s);
if poz_sp=0 then begin
tym_str:=s; s:=''; GetStringDelim:=tym_str
end
else begin
tym_str:=Copy(s,1,poz_sp-1);
Delete(s,1,poz_sp);
s:=Trim(s);
GetStringDelim:=tym_str
end
end; {======= function GetString =======}
var
iloscNowychFilmow, nowyFilmStart, i : Integer;
strT : string;
begin
if CheckVersion(4,1,0) then begin
i:=GetIteration;
if GetIteration = 0 then begin // iteracja pierwsza
FilmyUzytkownika := TStringList.Create;
PickTreeClear;
case GetOption('StringSep') of
0: StrSep := '';
1: StrSep := '"';
end;
StrSep := '"';
PlikUzytkownika := 'D:\testamc\';
if Input('Import filmów ocenianych na filmweb.pl', 'Podaj nazwę katalogu z zapisanymi plikami stron: ', PlikUzytkownika) then
AnalizujFilmyUzytkownika(PlikUzytkownika);
iloscNowychFilmow := FilmyUzytkownika.Count;
end else begin//if GetIteration = 0
i:=GetIteration;
strT:=FilmyUzytkownika.GetString(i-1);
SetField(fieldTranslatedTitle, GetStringDelim('|', strT));
SetField(fieldYear, GetStringDelim('|', strT));
SetField(fieldURL, GetStringDelim('|', strT));
SetField(fieldRating, Trim(strT));
end;
end else
ShowMessage('Skrypt wymaga programu Ant Movie Catalog w wersji 4.1.0.0 lub nowszej');
end.
Wszystko super, tylko i tak żeby to zadziałało musiałem skopiować wszystkie 27 stron - oprócz C:\filmweb\ - także do C:\ścieżka-do-AMC\catalogs bo inaczej wywalał się błąd.
Teraz mam pytanie - czy da się zrobić by skrypt FilmWeb nie pytał o tytuł każdego filmu. Szczególnie przy tej operacji wydaje się to bez sensu, skoro to są tytuły z FW.
Puściłbym z IMDb, bo tam jest batch mode, ale znowu tytułu mam tylko po PL...
Teraz mam pytanie - czy da się zrobić by skrypt FilmWeb nie pytał o tytuł każdego filmu. Szczególnie przy tej operacji wydaje się to bez sensu, skoro to są tytuły z FW.
Puściłbym z IMDb, bo tam jest batch mode, ale znowu tytułu mam tylko po PL...
-
- Posts: 20
- Joined: 2010-05-23 14:22:32
Version=2.0.2.0alpha (2014_08_14)
Poprawiona i dzialajaca (!chyba!) wersja skryptu.
https://galnospoke.opendrive.com/files?89843997_VjOIZ
PS
Jesli ktos zauwazy tam swoj kawalek kodu, prosze o kontakt - dopisze go do "listy plac" w skrypcie.
Wazne: jest maly problem z komentarzami po zmianach na FW. Co prawa je importuje, ale niezbyt elegancko. Nie znam jezyka skryptowego AMC, wiec nie wiem jak wyciac zbedny tekst w trakcie importu.
https://galnospoke.opendrive.com/files?89843997_VjOIZ
PS
Jesli ktos zauwazy tam swoj kawalek kodu, prosze o kontakt - dopisze go do "listy plac" w skrypcie.
Wazne: jest maly problem z komentarzami po zmianach na FW. Co prawa je importuje, ale niezbyt elegancko. Nie znam jezyka skryptowego AMC, wiec nie wiem jak wyciac zbedny tekst w trakcie importu.