Posted: 2017-06-24 22:25:55
				
				Pobiera Wam normalnie czas trwania filmu?
			Official Forum
https://forum.antp.be/phpbb3/
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ść.
popatrzę (Duplikaty aż tak bardzo nie były testowane).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ę)
Ponawiam swoje pytanie, bo przekopiowałem z najnowszej wersji skryptu część kodu odpowiedzialną za pobranie czasu trwania filmu i dalej nie pobiera...whisp wrote:Pobiera Wam normalnie czas trwania filmu?
Jutro zobaczę. Co się dzieje.whisp wrote:Ponawiam swoje pytanie, bo przekopiowałem z najnowszej wersji skryptu część kodu odpowiedzialną za pobranie czasu trwania filmu i dalej nie pobiera...whisp wrote:Pobiera Wam normalnie czas trwania filmu?
Dalej masz z tym problem? Jeżeli tak, to zmień linijkę Value na poniższąwhisp wrote:Ponawiam swoje pytanie, bo przekopiowałem z najnowszej wersji skryptu część kodu odpowiedzialną za pobranie czasu trwania filmu i dalej nie pobiera...whisp wrote:Pobiera Wam normalnie czas trwania filmu?
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;Yogi_18 wrote:Jeżeli Ariell porzucił projekt i dalsze rozwijanie tego programu...
To marny będzie nasz los![]()
Code: Select all
AnalyzeSearchPage('http://www.filmweb.pl/search/film?q=' + MovieName, 'film');
AnalyzeSearchPage('http://www.filmweb.pl/search/serial?q=' + MovieName, 'serial');Code: Select all
AnalyzeSearchPage('http://www.filmweb.pl/films/search?q=' + MovieName, 'film');
AnalyzeSearchPage('http://www.filmweb.pl/serials/search?q=' + MovieName, 'serial');Code: Select all
procedure GetMovieTitles(Address : String)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;Code: Select all
procedure AnalyzeSearchPage(Address : String; MovieType : String);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, '');Code: Select all
'?countryIds=' Code: Select all
'?countries='Code: Select all
// Kraj
while Pos('?countries=', Line) > 0 do
        begin
			Szukane := '?countries=';Code: Select all
genreIds=Code: Select all
?genres=