At least recently, FilmAffinity script parses Movie title custom field "title1" together with
movietype when the title is not movie, but series, documentary or so. For example, for
https://www.filmaffinity.com/en/film348275.html for the result after <h1> we were getting
Orson Welles: The One-Man Band documentary
Instead
Orson Welles: The One-Man Band
only.
So, using AI, I corrected this, because I confirmed that in such cases there are exactly 16 spaces between the title and movie type. So I changed this in the script. Instead of this
//Get ~title~
curPos:=1
ItemValue:=TextBetWeen(HTML,'<h1 id="main-title">','</h1>',false,curPos); //Strings which opens/closes the data. WEB_SPECIFIC
AddCustomFieldValueByName('title1',ItemValue);
LogMessage(' Get result title:'+ItemValue+'||');
I changed with this ( I choose to use >8 spaces just in case)
// Get ~title~
curPos := 1;
// Extract the section within <h1 id="main-title"> and </h1>
ItemValue := TextBetWeen(HTML, '<h1 id="main-title">', '</h1>', false, curPos);
LogMessage('Intermediate result after <h1>: ' + ItemValue + '||');
// Check and clean up any trailing content with 8 or more spaces
curPos := Pos(' ', ItemValue); // 8 spaces here between single quotes
if curPos > 0 then
begin
// Move the cursor to cover any additional spaces
// This loop handles any number of trailing spaces greater than or equal to 8
while (curPos <= Length(ItemValue)) and (ItemValue[curPos] = ' ') do // 8 spaces here between single quotes
begin
curPos := curPos + 1;
end;
// Extract the title up to the first non-space character after the spaces
ItemValue := Copy(ItemValue, 1, curPos - 1);
LogMessage('Cleaned title result: ' + ItemValue + '||');
end
else
begin
LogMessage('No extra trailing content found.');
end;
// Trim any leading or trailing whitespace
ItemValue := Trim(ItemValue);
// Add the title to the custom field
AddCustomFieldValueByName('title1', ItemValue);
// Log the final cleaned title for verification
LogMessage('Get result title: ' + ItemValue + '||');
It would be good Ivek to officially include it in FilmAffinity script if interested in, otherwise if someone is interested in, I can post my already customized script