English > Support

Personal Video Database 1.0.2.7 MOD

<< < (12/73) > >>

Ivek23:
IMDB_ [EN] [HTTPS] script

Full Cast and Crew section

For directors, you also need to add a snippet of code in order for the data to be downloaded correctly.


--- Quote ---    //Go to "Directed by" ~crew~ctDirectors
    curPos:=Pos('<h4 class="dataHeaderWithBorder">Directed by',HTML);                     //Strings start which opens the block content data. WEB_SPECIFIC   
   If 0<curPos Then Begin
      curPos:=PosFrom('</h4>',HTML,curPos);                                              //Strings end which opens the block content data.  WEB_SPECIFIC
      curPos:=curPos+Length('</h4>');                                                    //Strings end which opens the block content data.  WEB_SPECIFIC
      //Get all "raw" crew summary (in raw because we need the hidden person links) May one person or severals in the ~crew~ n the ~crew~
      endPos:=PosFrom('</table>',HTML,curPos);                                             //Strings which opens/closes the data. WEB_SPECIFIC
      ItemList:=Copy(HTML,curPos,endPos-curPos);
      //LogMessage('           Parse results ('+IntToStr(curPos)+','+IntToStr(endPos)+') complex ItemList:'+ItemList+'||');
      curPos:=Pos('<td class="name">',ItemList)                                         //String which opens the subList data. WEB_SPECIFIC
      index:=1;
      While curPos>0 Do Begin
         If (index>PEOPLE_LIMIT) Then break;     //Limited depassed (Remember index begin in 0).
         //Get PersonURL (Always must it has)
         PersonURL:=BASE_URL_PERSON_PRE + TextBetWeen(ItemList,'<a href="/name/','/',false,curPos) + BASE_URL_SUF;     //Strings which opens/closes the data. WEB_SPECIFIC
         LogMessage('      Parse Results PersonURL:'+PersonURL+'||');         
         //Get Name (Always must it has)
         Name:=TextBetWeen(ItemList,'> ','</a>',false,curPos);                                 //Strings which opens/closes the data. WEB_SPECIFIC      
         LogMessage('      Parse Results Name:'+Name+'||');
         //Get Role: PVD don't save Role in crew people but is added for Ivek23 as LogMessage compatibility
         Role:=TextBetWeen(ItemList,'<td class="credit">','</td>',false,curPos);                    //Strings which opens/closes the data. WEB_SPECIFIC
         LogMessage('      Parse Results Role:'+Role+'||');
         AddMoviePerson(Name,'','',PersonURL,ctDirectors);
         LogMessage('      Get results Director:#'+IntToStr(index)+'|'+Name+'|'+PersonURL+'||ctDirectors'); 
         curPos:=PosFrom('<td class="name">',ItemList,curPos)                                            //String which opens the subList data. WEB_SPECIFIC
         index:=index+1;
      End;
    End;
--- End quote ---

For Function ParsePage_IMDBMovieMPAA is also a small correction.


--- Quote ---Function ParsePage_IMDBMovieMPAA(HTML:String):Cardinal; //BlockOpen
    //Returns:
    //     Result:=prFinished; Script has finished gathering data
    //     Result:=prError;  If any big problem? with exit
    //Retrieve: ~MPAA~
  Var
    curPos:Integer;
    mpaaValue:String;
  Begin
.
.
.
   mpaaValue:=StringReplace(mpaaValue,'update: ','',False,False,True);                         //Cleanig value. WEB_SPECIFIC
    curPos:=Pos('Edit',mpaaValue);                               //WEB_SPECIFIC.
    If 0<curPos then mpaaValue:=Copy(mpaaValue,0,curPos-1);   
    If (mpaaValue='Approved') Then mpaaValue:='Rated G';
.
.
.
    AddFieldValueXML('mpaa',mpaaValue);
    LogMessage('      Get result MPAA='+mpaaValue+'||');
    LogMessage('Function ParsePage_IMDBMovieMPAA END=====================||');
  End; //BlockClose

--- End quote ---

IMDB_ [EN] [HTTPS] _00 script is attached.

Ivek23:

--- Quote from: fmb64 on September 18, 2018, 04:11:56 pm ---
--- Quote from: Ivek23 on September 18, 2018, 03:24:41 pm ---Yes, this is a mistake that will be corrected in the next IMDB_ [EN] [HTTPS] script version.

--- End quote ---

Thanks guys, I really appreciate your work for keeping this software alive.  :)
--- End quote ---

Welcome.

I tried and posted corrections. If I find anything else, I'll post it later.

VVV_Easy_Programing:

--- Quote from: jondak on August 13, 2018, 09:53:29 am ---Script Movie Configuration bug for http://vvveasy.altervista.org/wp-content/uploads/2018/08/PVD_0.9.9.21_MOD-V.2018.08.08.zip

--- End quote ---

--- Quote from: fmb64 on September 18, 2018, 02:53:36 pm ---The launch of the configuration script does not work if PVD is stored in a path containing spaces (for example "D:\Personal Video Database")   see attached error.
--- End quote ---

Thanks both. I have not understood the first time. Corrected in the attached patch that oame with the TheMovie [DE] scripts too.
NOT YET the Ivek23 alerts corrected in this patch.
Two questions to Ivek23 about duration info.
1) What is the diference between  "AddFieldValueXML('length',ItemValue);" and "AddFieldValue(mfDuration,ItemValue); " with "mfDuration = 14;"
2) PVD have a command "Re-read file information" in order to fill the next fields:

Is this Duration yours field? In your PVD version is not it ~length~?
a) If yes, I have added a new script parameter in order to preserve it for the user with a movie file copy
     PRESERVE_USER_MOVIE_CHARS = True ; //Preserve the user movie copy characteristics (length and languages channels) instead of the original runtime and languages.
b) If not What PVD field is? I don't be able to find it in my PVD database or in the forum documentation and it overwrites the .

Ivek23:

--- Quote from: VVV_Easy_Programing on September 18, 2018, 08:12:10 pm ---Two questions to Ivek23 about duration info.
1) What is the diference between  "AddFieldValueXML('length',ItemValue);" and "AddFieldValue(mfDuration,ItemValue); " with "mfDuration = 14;"
--- End quote ---

Otherwise, this means the same and the same normal field in the PVD database, but in IMDB_ [EN] [HTTPS] script example "AddFieldValueXML (" length ", ItemValue);" does not transfer any length or duration of a movie. It's completely different with "AddFieldValue (mfDuration, ItemValue);" which transfers the length or duration of a movie website, so it's necessary "mfDuration = 14;" he also needs it.

If already IMDB_ [EN] [HTTPS] script is being edited to work, it is also right that this part of the code is also edited in order to work properly. This is about certain PVD users, who use multiple databases in order to choose the information they want.

My example of how I use the length or duration of a movie in the database:

I am using one database with information about a specific movie such as length and
similar to the movies folder stored in the archive on external disks. In the rest of the database, for example, I have, for example, saved only the length of the movie, which information is downloaded from the web site using plug-ins or scripts.


--- Quote from: VVV_Easy_Programing on September 18, 2018, 08:12:10 pm ---2) PVD have a command "Re-read file information" in order to fill the next fields:

Is this Duration yours field? In your PVD version is not it ~length~?
a) If yes, I have added a new script parameter in order to preserve it for the user with a movie file copy
     PRESERVE_USER_MOVIE_CHARS = True ; //Preserve the user movie copy characteristics (length and languages channels) instead of the original runtime and languages.
--- End quote ---

I've already answered partially. Of course, all this is stated in my database and is true, but not for everyone.

PRESERVE_USER_MOVIE_CHARS = True; keeps the length of the film.

PRESERVE_USER_MOVIE_CHARS = True; however, it is not true for the original language because this is a particularly normal field in the database. The Original Language field always downloaded the information for the original language from the website (with IMDB only the first written language, which is very much often English language). There is only a language box, but it does not have a direct link to the original language field.


--- Quote from: VVV_Easy_Programing on September 18, 2018, 08:12:10 pm ---b) If not What PVD field is? I don't be able to find it in my PVD database or in the forum documentation and it overwrites the .
--- End quote ---

"length" is the XML mark for the duration field and is in the skins (find it there), the Duration record is for a length - "length" field and it is visible in the PVD database.

Recommendation:

This option  PRESERVE_USER_MOVIE_CHARS = True;  it would be necessary to define for the time and separately for the language, so that each user can decide on his own data for which information he will keep and what information he will replace with other data.

Ivek23:
IMDB_ [EN] [HTTPS] script

// Get ~ imdbrating ~, ~ IMDB_Votes ~ code has been changed again and now the code again works as it worked on 2018.08.08, when the last PVD_1.0.2.7_MOD-V.2018.08.08 was created.


--- Quote ---    //Get ~imdbrating~, ~IMDB_Votes~
    curPos:=Pos('<span itemprop="ratingValue">',HTML);                      //WEB_SPECIFIC.
    If 0<curPos Then Begin                         
       ItemValue:=TextBetWeen(HTML,'<span itemprop="ratingValue">','<',false,curPos);   //Strings which opens/closes the data. WEB_SPECIFIC
       ItemValue:=StringReplace(ItemValue,',','.',True,True,False);                           //Decimal comma spanish separator to point english separator.
       AddFieldValueXML('imdbrating',ItemValue);
       LogMessage('      Get result imdbrating:'+ItemValue+'||');
       ItemValue:=TextBetWeen(HTML,'<span class="small" itemprop="ratingCount">','</span>',false,curPos);   //Strings which opens/closes the data. WEB_SPECIFIC
       ItemValue:=StringReplace(ItemValue,'.','',True,True,False);            //Remove thousand point spanish separator.
       ItemValue:=StringReplace(ItemValue,',','',True,True,False);            //Remove thousand comma english separator.
       AddCustomFieldValueByName('IMDB_Votes',ItemValue);
       LogMessage('      Get result IMDB_Votes:'+ItemValue+'||');
    End;
--- End quote ---

Fixed IMDB_ [EN] [HTTPS] _00 script is attached.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version