1
Talk / Re: Videodb.info news
« on: May 07, 2022, 11:53:33 am »Good news:
Web page videodb.info will operated for yet at least one year.
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Good news:
Web page videodb.info will operated for yet at least one year.
Thank you Ivek. It works perfectly!
I gues it was a problem with the movies that don't have reviews. You saved me again!
start viddb.exe -debug -portableor changes only to this
-debug -portable
//Get ~User Reviews~
curPos:=Pos('<h3 class="ipc-title__text">User reviews',HTML); //WEB_SPECIFIC.
If 0<curPos then begin
curPos:=PosFrom('<div class="ipc-html-content ipc-html-content--base"><div>',HTML,curPos)+Length('<div class="ipc-html-content ipc-html-content--base"><div>');
EndPos:=PosFrom('</div></div><div class="ipc-overflowText-overlay">',HTML,curPos);
ItemValue:=Copy(HTML,curPos,endPos-curPos); //Strings which opens/closes the data. WEB_SPECIFIC
ItemValue:=StringReplace(ItemValue,'</p>','',True,False,True);
ItemValue:=StringReplace(ItemValue,'</div>','',True,False,True);
ItemValue:=StringReplace(ItemValue,'<ul><li>','',True,False,True);
ItemValue:=StringReplace(ItemValue,'</li></ul>','',True,False,True);
ItemValue:=StringReplace(ItemValue,':)','',True,False,True);
curPos:=Pos('<!DOCTYPE html>',ItemValue);
If 0<curPos then ItemValue:=Copy(ItemValue,0,curPos-1);
curPos:=Pos('Find showtimes, ',ItemValue);
If 0<curPos then ItemValue:=Copy(ItemValue,0,curPos-1);
curPos:=Pos('var ue_',ItemValue);
If 0<curPos then ItemValue:=Copy(ItemValue,0,curPos-1);
curPos:=Pos('aphprotocol.org/schema/',ItemValue);
If 0<curPos then ItemValue:=Copy(ItemValue,0,curPos-1);
AddCustomFieldValueByName('User Reviews',ItemValue);
AddCustomFieldValueByName('User Comments',ItemValue);
if ItemValue <> '' then LogMessage(' Get result User Reviews (CF~User Reviews~): <br>'+ItemValue+'||');
End;
Thank you Ivek. I will try this!
Hello.
Can someone please check if these 2 links can be imported to PVD:
https://www.imdb.com/title/tt3118664/
https://www.imdb.com/title/tt0298045/
Thank you in advance!
IMPORTANT: TEST ONLY IN NEW/EMPTY DATABASE OR IF THE LINKS DON'T WORK YOU MAY CORRUPT YOUR DATABASE!!!
Thank you Ivek for a lot of work! Can you please explain if some of these script is cumulative, or we have to have them all and run them all separately in order to get maximu data? Thank youin advance.
Happy New Year! Good luck and health !!!!Dear Ivek, First of all I wish you and all our friends in PVD, a Happy New Year 2022.
ThanksI am writing in order to ask where stands the checking you where doing on all the files which needed modification. Have you finished them or not yet ?
Please let us know.
...
Since I already have known vision problems (you probably already know that), which are gradually increasing, I also need to stop with script tests so as not to strain my eyes too much, because then PVD users would be deprived of new script updates and further PVD use....
Dear Ivek, First of all I wish you and all our friends in PVD, a Happy New Year 2022.
I am writing in order to ask where stands the checking you where doing on all the files which needed modification. Have you finished them or not yet ?
Please let us know.
Here is a list of Imdb scripts that have already been updated and added to the forum. Below are also links to the topic where there are descriptions for these scripts.
- Imdb Movie Info(title)
- Imdb Movie
- Imdb Movie Info
- Imdb Top 250, IMDb Rating and Studio (2)
- Imdb Movie Additional Info
- Imdb Movie Additional Info a
- Imdb Movie(tech specs) and Imdb+Movie(tech+specs)
- Imdb Movie(plotkeywords)
- Imdb Movie(plotsummary)
- Imdb Movie(releaseinfo) and Imdb Movie(combined) a
- Imdb Movie(soundtrack)
- Imdb Movie(taglines)
- Imdb Movie (locations)
- Imdb Movie(combined)
- Imdb Movie(parentsguide)
- Imdb Movie(combined)2 - replace - Imdb Movie(combined) a
- Imdb Movie(parentsguide)2 - replace - Imdb Movie(parentsguide) a
However, the Imdb Movie (business) script cannot be fixed because these IMDb websites no longer exist.
A new Imdb Movie (locations) script is now available instead of the Imdb Movie (business) script.
Https Imdb Movie Script for rating ...
http://www.videodb.info/forum_en/index.php/topic,4191.0.html
Https Imdb Movie Script for Additional Information
http://www.videodb.info/forum_en/index.php/topic,4193.0.html
Imdb Movie Script (cast)2 0.1.2.0
Imdb Movie Script (cast series)2 0.1.2.0
Imdb Movie Script (cast episode)2 0.1.2.1
Imdb Movie Photo (Poster) Script 0.1.3.0
Imdb Movie Poster Script (2) 0.1.4.0
Imdb Movie Photo (poster) Script (2) 0.1.4.0
- Imdb Movie(studio&combined) and Imdb Movie(studio&combined)2
- Imdb Movie(studio&company) and Imdb Movie(studio&company)2
- Imdb Movie(misclinks)
- Imdb Movie(pmisclinks)
- Imdb Movie Photo(Poster)(2)
- Imdb Movie Poster(2)
- Imdb+Movie+Photo
- All Imdb Movie(cast) scripts
I want to use this program but I keep getting an IOHandler not valid error message. I tried on Win 7 & Win 10 to no avail.
How do I solve this problem or where do I look??
Thank you
Len Ovo
I want to use this program but I keep getting an IOHandler not valid error message. I tried on Win 7 & Win 10 to no avail.
How do I solve this problem or where do I look??
Thank you
Len Ovo
Function ParsePage_IMDBMovieBASE(HTML:String):Cardinal; //BlockOpen
//Returns:
// Result:=prFinished; Script has finished gathering data
// Result:=prError; If żany big problem? with exit;
//Retrieve: ~title~, ~year~, ~origtitle~, ~poster~ / ~imdbrating~, ~IMDB_Votes~ (Custom Field) / ~TOP_250~(Custom Field) /
// If Not(GET_FULL_CREDIT): ~crew~ctDirectors,ctWriters,ctComposers,ctProducers(Not in base page), ctActors
// ~description~ / ~category~ "keywords" / ~tagline~ / ~genre~
// If Not(GET_FULL_MPAA) ~mpaa~
// ~country~ / ~rdate~ in contry provider local IP geolocation
// If Not(GET_FULL_AKA) ~aka~.
// ~budget~ / ~money~ / ~studio~ "Production Co"
// If Not(GET_FULL_FEATURES) ~features~
Var
curPos,endPos,index:Integer;
debug_pos1:Integer;
StartPos:Integer;
//Hours,Minutes:Integer;
ItemValue,ItemValue0,ItemValue1,ItemValue2,ItemList,ImageFile:String;
ItemValue00:String;
titleValue:String;
yearValue:String;
seriesValue,yearsValue:String;
Name,Role,PersonURL:String;
ItemList2,ItemList12,day_s,month_s,year_s:String;
//ItemList1,ItemList11:String;
ItemArray:TWideArray;
Begin
.
.
.
//Go to "Tv Mode"
StartPos:=Pos('<h1 textlength="',HTML);
if StartPos>0 then begin
ItemValue:=HTMLValue(HTML,StartPos,0,'<li role="presentation" class="ipc-inline-list__item">','releaseinfo?ref_=tt_ov_rdat');
if ItemValue <> '' then LogMessage(' Get result Tv Mode1:'+ItemValue+'||');
debug_pos1:=Pos('<a href="',ItemValue);
if debug_pos1 >0 then ItemValue:=Copy(ItemValue,0,debug_pos1-1);
//ItemValue:=StringReplace(ItemValue,'','',True,False,True);
//ItemValue:=StringReplace(ItemValue,'</a>','',True,False,True);
AddCustomFieldValueByName('Tv',ItemValue);
if ItemValue <> '' then LogMessage(' Get result Tv Mode (CF~Tv~):'+ItemValue);
if Pos('TV Mini Series',ItemValue)>0 then yearsValue:=yearsValue+'TV Mini Series ';
if Pos('TV Series',ItemValue)>0 then yearsValue:=yearsValue+'TV Series ';
if yearsValue <> '' then LogMessage(' Get result yearsValue:'+yearsValue);
//ItemValue1:=HTMLValue(HTML,StartPos,0,'<li role="presentation" class="ipc-inline-list__item','</ul>');
ItemValue1:=HTMLValues(HTML,'<h1 textlength="','</ul>','"ipc-inline-list__item">','</',', ',StartPos);
//ItemValue1:=HTMLValues2(HTML,'<h1 textlength="','</ul>','<li role="presentation" class="ipc-inline-list__item">','</li>',', ',StartPos);
AddCustomFieldValueByName('Tv2',ItemValue1);
if ItemValue1 <> '' then LogMessage(' Get result Tv Mode01:'+#13+ItemValue1+'||'+#13);
end else
LogMessage('tv-metadata not found');
//Go to "Tv Mode" Series-year
StartPos:=Pos('releaseinfo?ref_=tt_ov_rdat',HTML);
if StartPos>0 then begin
yearValue:=HTMLValue(HTML,StartPos,0,'</a>','</span></li><li role="presentation" class="ipc-inline-list__item"><a href="/title/');
//AddCustomFieldValueByName('IMDB_year',yearValue);
//AddCustomFieldValueByName('IMDB Year',yearValue);
AddCustomFieldValueByName('IMDB_Series-year',yearValue);
if yearsValue <> '' then seriesValue:=yearsValue+'('+yearValue+')' else seriesValue:='';
AddCustomFieldValueByName('IMDB_Series-year1',seriesValue);
if seriesValue <> '' then LogMessage(' Get result seriesValue:'+#13+seriesValue+'||'+#13);
if yearValue <> '' then LogMessage(' Get result Tv Mode (CF~IMDB_year~)+:'+yearValue);
end else
LogMessage('tv-metadata-a not found');
.
.
.
//Get the original "Runtime" (in minutes) as ~length~ (in seconds) instead of the duration of the user movie copy //WEB_SPECIFIC.
curPos:=Pos('<span class="ipc-metadata-list-item__label">Runtime</span>',HTML); //WEB_SPECIFIC.
If 0<curPos Then Begin
ItemValue1:=TextBetWeen(HTML,'<div class="ipc-metadata-list-item__content-container">','minutes</div></li>',false,curPos); //Strings which opens/closes the data. WEB_SPECIFIC
//ItemList:=ItemList+'Original Runtime: '+ItemValue1+' min.<br>';
LogMessage(' Get result Original Runtime11:'+ItemValue1+'||');
//If GET_FULL_FEATURES Then
if ItemValue1 <> '' then
AddFieldValueXML('length',IntToStr(60*StrToInt(ItemValue1))); //~length~ Value in seconds.
if ItemValue1 <> '' then AddCustomFieldValueByName('Run time1',ItemValue1);
//AddFieldValue(14,ItemValue1); //Field number 14 = Duration, value in minutes
if ItemValue1 <> '' then LogMessage(' Get result lenght011:'+ItemValue1+'||');
//LogMessage(' Get result lenght012:'+HTMLValues(HTML,'<span class="ipc-metadata-list-item__label">Runtime</span>','</ul>','<li role="presentation" class="ipc-inline-list__item">','</li>',', ',endPos)+'||');
ItemValue00:=TextBetWeen(HTML,'<div class="ipc-metadata-list-item__content-container">','hour</div></li>',false,curPos); //Strings which opens/closes the data. WEB_SPECIFIC
LogMessage(' Get result Original Runtime111:'+ItemValue00+'||');
if ItemValue00 <> '' then
AddFieldValueXML('length',IntToStr(3600*StrToInt(ItemValue00))); //~length~ Value in seconds.
if ItemValue00 <> '' then AddCustomFieldValueByName('Run time1',IntToStr(60*StrToInt(ItemValue00)));
if ItemValue00 <> '' then LogMessage(' Get result Original Runtime111:'+ItemValue00+'||');
if ItemValue00 <> '' then LogMessage(' Get result lenght0111:'+ItemValue00+'||');
End;