Page 8 of 34

Posted: 2017-06-24 22:25:55
by whisp
Pobiera Wam normalnie czas trwania filmu?

Posted: 2017-07-01 11:42:44
by Yogi_18
Hej

Zauważyłem błąd który troszkę utrudnia działanie programu...
Moja baza osiągnęła prawie 8 tyś pozycji, w tym notuje sobie premiery to co chce obejrzeć, to co posiadam, i to co będzie w przyszłości...
Plik z danymi ma 140 MB, a plików typu okładki mamy już 320 tyś....
Błąd jest taki że w momencie przeglądania bazy i przechodzenia pomiędzy filmami plik się zawiesza, wygląda to tak jak by program nie wyrabiał z ogarnianiem połączeń między plikiem bazowym, a zdjęciami. Jedyna opcja to na siłę wyłączenie programu...

W związku z powyższym zastanawiam się czy problem dalej by występował w momencie jak by podzielić ilość plików z jednego folderu na kilka mniejszych, choćby to co pisał Ariell dodatki z filmu zaczynającego się na A... będą w folderze "A", ilość plików w jedym folderze się zmaleje, ale ciekawe jaki to będzie miało wpływ na wydajność.


Drugi błąd który jest to dopisek "Zdublowane", wychodzi na to że w momencie jak usuniemy pozycję zdublowaną z bazy i odświeżmy tę pierwszą pozycję to program nadal wywali komunikat że film jest już w bazie... Program przy kasowaniu nie usuwa wpisów w pliku "Filmy.adb", przydałoby się jakiś skrypt który zweryfikuje który wpis jest "aktualny", a który można wykasować... (zakładam że to możliwe byłoby do zrobienia, więc może nasz mistrz weźmie to kiedyś pod uwagę :))

Posted: 2017-07-01 21:35:30
by Ariell
Yogi_18 wrote:Hej

Zauważyłem błąd który troszkę utrudnia działanie programu...
Moja baza osiągnęła prawie 8 tyś pozycji, w tym notuje sobie premiery to co chce obejrzeć, to co posiadam, i to co będzie w przyszłości...
Plik z danymi ma 140 MB, a plików typu okładki mamy już 320 tyś....
Błąd jest taki że w momencie przeglądania bazy i przechodzenia pomiędzy filmami plik się zawiesza, wygląda to tak jak by program nie wyrabiał z ogarnianiem połączeń między plikiem bazowym, a zdjęciami. Jedyna opcja to na siłę wyłączenie programu...

W związku z powyższym zastanawiam się czy problem dalej by występował w momencie jak by podzielić ilość plików z jednego folderu na kilka mniejszych, choćby to co pisał Ariell dodatki z filmu zaczynającego się na A... będą w folderze "A", ilość plików w jedym folderze się zmaleje, ale ciekawe jaki to będzie miało wpływ na wydajność.

MoveExtras usuwa przeciążenie windowsa przy odczycie ogromnych ilości plików z jednego katalogu.

Yogi_18 wrote:Drugi błąd który jest to dopisek "Zdublowane", wychodzi na to że w momencie jak usuniemy pozycję zdublowaną z bazy i odświeżmy tę pierwszą pozycję to program nadal wywali komunikat że film jest już w bazie... Program przy kasowaniu nie usuwa wpisów w pliku "Filmy.adb", przydałoby się jakiś skrypt który zweryfikuje który wpis jest "aktualny", a który można wykasować... (zakładam że to możliwe byłoby do zrobienia, więc może nasz mistrz weźmie to kiedyś pod uwagę :))
popatrzę (Duplikaty aż tak bardzo nie były testowane).
A co do pierwszego to powstaje też wersja na kilka baz danych z jednym centralnym katalogiem zdjęć.
Obecnie testuję 3 różne rozwiązania i muszę któreś wybrać bo oryginalne powodowało dużo błędów.[/quote]

Posted: 2017-07-04 19:39:56
by whisp
whisp wrote:Pobiera Wam normalnie czas trwania filmu?
Ponawiam swoje pytanie, bo przekopiowałem z najnowszej wersji skryptu część kodu odpowiedzialną za pobranie czasu trwania filmu i dalej nie pobiera...

Posted: 2017-07-12 11:21:42
by Ariell
whisp wrote:
whisp wrote:Pobiera Wam normalnie czas trwania filmu?
Ponawiam swoje pytanie, bo przekopiowałem z najnowszej wersji skryptu część kodu odpowiedzialną za pobranie czasu trwania filmu i dalej nie pobiera...
Jutro zobaczę. Co się dzieje.

Obecnie skończyłem projekt nowego nagłośnienia w samochodzie.
Podobny jest u mnie do oglądania filmów. Dźwięk przestrzenny DTS THX to dno w konfrontacji z moim.

Posted: 2017-09-11 15:25:55
by robinse
Hello,

Czy polska wersja Ant movie nadal się rozwija..... :)

Posted: 2017-10-04 11:09:50
by Yogi_18
Jeżeli Ariell porzucił projekt i dalsze rozwijanie tego programu...
To marny będzie nasz los :( :cry:

Posted: 2017-10-06 20:20:33
by athe
whisp wrote:
whisp wrote:Pobiera Wam normalnie czas trwania filmu?
Ponawiam swoje pytanie, bo przekopiowałem z najnowszej wersji skryptu część kodu odpowiedzialną za pobranie czasu trwania filmu i dalej nie pobiera...
Dalej masz z tym problem? Jeżeli tak, to zmień linijkę Value na poniższą

Code: Select all

//Czas trwania
	if ((GetField(fieldLength) = '') or (GetField(fieldVideoFormat) = '') or (GetOption('CzasTrwaniaFilmu') = 1)) then
	begin
		Value := TextBetween(Page.Text, 'datetime="PT','M');
		if ((Length(Value) > 0) and (not ((GetOption('Aktualizacja') = 2) and (GetField(fieldLength)=Value)))) then SetField(fieldLength, Value);
	end;
Pozdrawiam.
Możliwe, że Ariell jest czymś zajęty albo ma poważny powód do braku aktywności, poczekajmy.

Posted: 2017-11-15 04:00:41
by Ariell
Yogi_18 wrote:Jeżeli Ariell porzucił projekt i dalsze rozwijanie tego programu...
To marny będzie nasz los :( :cry:
:hihi: :hihi:

Posted: 2017-11-26 00:10:25
by whisp
athe, dziękuję!

Zyczenia

Posted: 2017-12-23 18:35:02
by athe
Życzę wszystkim forumowiczom AMC spokojnych i wesołych Świąt oraz szczęśliwego Nowego Roku.

Posted: 2018-01-10 17:46:41
by robinse
Cześć, jest problem ze skryptem.... chyba filmweb coś pozmieniał, bo nie odnajduje filmów

Posted: 2018-01-10 21:36:17
by athe
Zmienili skubańce sposób wyszukiwania filmów. Utworzyli dodatkową stronę, z której trzeba wybrać film. Ariell, zerknij jak masz chwilę czasu. Bez tej poprawki cała Twoja praca pójdzie na marne. Naprawdę szkoda, bo to najlepszy skrypt do AMC i na dodatek polski. Zauważyłem, że w części gdzie jest adres wyszukiwania jest różnica w starej linii jest:

Code: Select all

AnalyzeSearchPage('http://www.filmweb.pl/search/film?q=' + MovieName, 'film');
AnalyzeSearchPage('http://www.filmweb.pl/search/serial?q=' + MovieName, 'serial');
a w nowej ma być:

Code: Select all

AnalyzeSearchPage('http://www.filmweb.pl/films/search?q=' + MovieName, 'film');
AnalyzeSearchPage('http://www.filmweb.pl/serials/search?q=' + MovieName, 'serial');
Ale niestety bez Ariella się nie uda. Proste rzeczy można jakoś poprawić, ale w przypadku gdy zmienili całą strukturę strony?
Dobra, poprawiłem część skryptu:

Code: Select all

procedure GetMovieTitles(Address : String)
na:

Code: Select all

procedure GetMovieTitles(Address : String);
var
  Page : TStringList;
  Line, Year, MovieTitle, MovieAddress : String;
  LineNr : Integer;
begin
  Page := TStringList.Create;
  Page.Text := UTF8Decode(GetPage(Address));
  //Page.Text := StringReplace(Page.Text, '<div class'+ StrSep +'class="hits__item"'+ StrSep +'>', #13#10 + '<div class=hitDescWrapper>');
  Page.Text := TextBetween(Page.Text, 'id="searchResult" >', 'class="content__sidebar">');
    Line := Page.Text;

  LineNr := FindLine('filmPreview--', Page, 0);
  while LineNr > -1 do
  begin
    Line := Page.GetString(LineNr + 0) + Page.GetString(LineNr + 1) +
            Page.GetString(LineNr + 2) + Page.GetString(LineNr + 3);
    Line := Czysc(Line);
    MovieAddress := 'http://www.filmweb.pl' + TextBetween(Line, 'filmPreview__link" href="', '"><h3');
    //MovieAddress := StringReplace(MovieAddress, '>', '');
    MovieTitle := TextBetween(Line, 'class="filmPreview__title">', '</h3>');
    HTMLRemoveTags(MovieTitle);
    MovieTitle := Trim(MovieTitle);
    CorrectTextError(MovieTitle);
    UniToPol(MovieTitle);
    Year := TextBetween(Line, 'filmPreview__year">', '</span>');
    if (Year = '') then begin
      Line := Page.GetString(LineNr + 1);
      Year := TextBetween(Line, 'data-release="', '"');
    end;
    HTMLRemoveTags(Year);
    Year := Trim(Year);
    CorrectTextError(Year);
    MovieTitle := MovieTitle + ' (' + Year + ')';
    if (FindLine(MovieAddress, SearchAddresses, 0) < 0) then
    begin
      PickTreeAdd(MovieTitle, MovieAddress);
      SearchAddresses.Add(MovieAddress);
    end;
    LineNr := FindLine('filmPreview--', Page, LineNr + 1);
  end;
  Page.Free;
end;
Trzeba jeszcze w procedurze

Code: Select all

procedure AnalyzeSearchPage(Address : String; MovieType : String);
zmienić zmienną 'Line' i zdezaktywować dwie linie:

Code: Select all

procedure AnalyzeSearchPage(Address : String; MovieType : String);
var
  Page : TStringList;
  Line, Linetmp, MovieVariety, AdressSubPage : String;
  LineNr, Count, MoviesCount, i, NumOfPages : Integer;
begin
  Page := TStringList.Create;
  Page.Text := UTF8Decode(GetPage(Address));
  Line := TextBetween(Page.Text, 'Znalezione pozycje: <span>', '</span></div>');
  MovieVariety := Page.Text;
 // Linetmp:=TextBetween(Line, 'z', '</div>');
 // Line := Linetmp;
  Line := Czysc(Line);
  MoviesCount := StrToInt(Trim(Line), 0);
  MovieVariety := ' ' + MovieType + ':';
  PickTreeAdd('Znaleziono ' + IntToStr(MoviesCount) + MovieVariety, '');
Mam nadzieję, że niczego nie pominąłem. Sprawdźcie i dajcie znać. U mnie działają i filmy i seriale.
Pamiętajcie o zmianie w procedurze wyszukiwania, pisałem o tym wyżej w tym samym poście.

Posted: 2018-01-11 07:01:24
by KRiSZK0
Pozostaje chwilowo wyszukiwać bezpośrednio na FW i wklejać link danego filmu/serialu do AMC po czym wykonać aktualizację pozycji. Skrypt poprawnie zaciągnie dane ze strony opisu.

Posted: 2018-01-12 23:39:16
by athe
W poście z 10.01.2018 jest zmieniony i działający skrypt odpowiadający za wyszukiwanie filmów. Pozdrawiam

Posted: 2018-01-13 10:35:29
by robinse
Działa, u mnie nie pobiera jedynie kraju...dziękuje z pomoc :)

Posted: 2018-01-13 10:43:29
by robinse
u mnie nie pobiera też gatunku..... może da się coś z tym zrobić.... :(

Posted: 2018-01-13 15:09:53
by athe
Żeby działał kraj i gatunek trzeba w procedurze kraj, zmienić wyrażenia

Code: Select all

'?countryIds=' 
na

Code: Select all

'?countries='
Występuje w dwóch liniach

Code: Select all

// Kraj
while Pos('?countries=', Line) > 0 do
        begin
			Szukane := '?countries=';
Podobnie z gatunkiem. Należy zmienić

Code: Select all

genreIds=
na

Code: Select all

?genres=
To wyrażenie jest również w dwóch liniach. Piszcie jak coś nie działa, co dam radę to podpowiem. Pozdrawiam

Posted: 2018-01-13 18:00:37
by robinse
Działa bardzo dobrze.........dziękuje :grinking:

Posted: 2018-01-13 18:58:14
by whisp
U mnie też działa, dzięki wielkie athe!