Author Topic: Script for egafd.com  (Read 32953 times)

0 Members and 1 Guest are viewing this topic.

Offline pra15

  • Power User
  • ****
  • Posts: 164
    • View Profile
Re: Script for egafd.com
« Reply #100 on: December 25, 2011, 11:03:29 pm »
I changed procedure of search to more possibilities of results.
We can now obtain a result with "Segaud" for example.

I cleaned too variables who are not used.

I re-added conditions in parse people for <notes> <pseudonyms> and <Films> because i think within this, the script can give an error if for example :
there is part <notes> and there is not part <pseudonyms> in web page, in this case procedure parse page even so call parse people because 'IF pos(<notes>' is before 'IF pos(<pseudonyms' in parse page.

[attachment deleted by admin]
« Last Edit: December 26, 2011, 01:43:34 am by pra15 »

Offline Ivek23

  • Global Moderator
  • *****
  • Posts: 1899
    • View Profile
Re: Script for egafd.com
« Reply #101 on: December 26, 2011, 07:22:30 am »
Quote
For ewample if you search Natacha, the script download info of Natacha but in the egafd (N) page there are other Natacha ( Natacha [2] , Natacha [3].....), so i would like that in the prlist i can choose the good natacha.
I you have an idea why the prlist not appears?
http://www.egafd.com/actresses/details.php/id/n00082

Otherwise work fine, now it is again a problem with this:
when I search results for Natacha PVD freezes me with your latest script, while the previous version with no problems.
This version of search results should be kept and modify it a little further and really the right solution for search results.

Ivek23
Win 7 32bit, 64bit   PVD v0.9.9.21


Offline pra15

  • Power User
  • ****
  • Posts: 164
    • View Profile
Re: Script for egafd.com
« Reply #102 on: December 26, 2011, 03:26:49 pm »
It was hard, but i found the errors.
I hope search works now.

Code: [Select]
procedure SearchResults(HTML : string);

///////////////////////////////////////////////////////////////////////////////////////////
var curpos,endpos, counter : Integer; //
    actPosStart, actPosEnd, actalposStart, actalposEnd, urlPosStart, urlposEnd : integer;//
    beforeName, URLTemp, AliasName, NameTemp, RealName, ifAlias : string; //
///////////////////////////////////////////////////////////////////////////////////////////

Begin

//Search Name or Pseudo or part of name (with start in same alphabetic page as RealName)
Curpos := Pos(nomAct, HTML);

If curpos > 0 then begin

endPos := curpos;

While (curpos > 0) AND (curpos < PosFrom('<h2 class="index">Actress:', HTML, Endpos)) do begin
endpos := curpos;
actPosStart:= PrevPos('>', HTML, curpos);
actPosEnd := Posfrom('</', HTML, actposStart);
NameTemp := Trim(Copy(HTML, actPosStart+1, (actPosEnd-actPosStart-1)));
beforeName := Trim(Copy(HTML, actposStart-3, 1));

   If copy(NameTemp,1,9) = 'alias for' then
     ifAlias := 'True'
   else
   ifAlias := '';


  Case NameTemp of
    nomAct :  Begin                     //Same name as Title
    //logmessage('Same Name as title');
            Case BeforeName of
              'c' : Begin             //Real Name
              RealName := NameTemp;
              AliasName := NameTemp;
              // Get URL
              urlPosStart := Prevpos('href="', HTML, actposStart);
        urlPosend := PosFrom('" class="', HTML, urlPosstart);
        URLTemp := BASE_URL + Trim(Copy(HTML, urlposStart + 6, (urlPosEnd-urlPosStart-6)));
        AddSearchResult(AliasName, NameTemp, '', LowerCase(URLTemp),'');
        LogMessage('TYPE I');
              end;
             
            else begin              // Good Name but Alias
            //logmessage('Good Name but Alias');
              AliasName := NomAct;
              // Real Name
              actalPosStart := Posfrom('alias for ', HTML, actposEnd);
        actalposEnd := Posfrom('</span>', HTML, actalposstart);
        RealName := Trim(Copy(HTML, (actalposStart + 10), (actalposEnd - actalposStart - 10)));
        // Name Temp
        NameTemp := 'Alias for ' + RealName;
        // Get URL
        urlPosStart := PrevPos('href="', HTML, actPosstart);
        urlPosend := PosFrom('" class="', HTML, urlPosstart);
        URLTemp := BASE_URL + Trim(Copy(HTML, urlposStart + 6, (urlPosEnd-urlPosStart-6)));
        AddSearchResult(AliasName, NameTemp, '', LowerCase(URLTemp),'');
        LogMessage('TYPE II');
              end;
            end;
    end;
    else begin
      //Alias Name
          If ifAlias <> 'True' then begin
            If Copy(HTML, actPosStart-1,1) <> '>' then actPosStart := PrevPos('>', HTML, curpos);
      actPosEnd := Posfrom('</', HTML, actposStart);
      AliasName := Trim(Copy(HTML, actPosStart+1, (actPosEnd-actPosStart-1)));
      beforeName := Trim(Copy(HTML, actposStart-3, 1));
   
        Case beforename of
          'c' : Begin                   // Alias is real Name
              // Real Name
              RealName := AliasName;
              // Get URL
              urlPosStart := Prevpos('href="', HTML, actposStart);
        urlPosend := PosFrom('" class="', HTML, urlPosstart);
        URLTemp := BASE_URL + Trim(Copy(HTML, urlposStart + 6, (urlPosEnd-urlPosStart-6)));
        AddSearchResult(AliasName, RealName, '', LowerCase(URLTemp),'');
        logmessage('TYPE III');
          end;
       
        else begin
              // Real Name
              actalPosStart := Posfrom('alias for ', HTML, actPosEnd);
        actalPosEnd := Posfrom('</span>', HTML, actalPosStart);
        RealName := Trim(Copy(HTML, (actalposStart + 10), (actalposEnd - actalposStart - 10)));
        NameTemp := 'alias for ' + Realname;
        // Get URL
        urlPosStart := PrevPos('href="', HTML, actPosstart);
        urlPosend := PosFrom('" class="', HTML, urlPosstart);
        URLTemp := BASE_URL + Trim(Copy(HTML, urlposStart + 6, (urlPosEnd-urlPosStart-6)));
        AddSearchResult(AliasName, NameTemp, '', LowerCase(URLTemp),'');
        Logmessage('TYPE IV');
          end;
        end;
          end 
      else begin                  // Name is in Alias for ......
      logmessage ('trouve dans alias');
              // Alias Name
              actPosStart := Prevpos('"acta">', HTML, curpos);
              actPosEnd := Posfrom('</a>', HTML, actPosStart);
              Aliasname := Trim(Copy(HTML, (actPosStart + 7), (actPosEnd - actPosStart - 7)));
              // Real Name
              actalPosStart := Posfrom('alias for ', HTML, actposEnd);
        actalPosEnd := Posfrom('</span>', HTML, actalposStart);
              RealName := Trim(Copy(HTML, (actalposStart + 10), (actalposEnd - actalposStart - 10)));
              // Get URL
        urlPosStart := PrevPos('href="', HTML, actalPosstart);
        urlPosend := PosFrom('" class="', HTML, urlPosstart);
        URLTemp := BASE_URL + Trim(Copy(HTML, urlposStart + 6, (urlPosEnd-urlPosStart-6)));
        AddSearchResult(AliasName, NameTemp, '', LowerCase(URLTemp),'');
        actPosEnd := PosFrom('href="', HTML, actalPosEnd);
        logmessage('TYPE V');
end;
    end;
  end;
curpos := PosFrom(nomAct, HTML, actPosEnd);
end;
  end;
end;

Offline Ivek23

  • Global Moderator
  • *****
  • Posts: 1899
    • View Profile
Re: Script for egafd.com
« Reply #103 on: December 26, 2011, 03:41:35 pm »
It was hard, but i found the errors.
I hope search works now.

Code: [Select]
procedure SearchResults(HTML : string);

///////////////////////////////////////////////////////////////////////////////////////////
var curpos,endpos, counter : Integer; //
    actPosStart, actPosEnd, actalposStart, actalposEnd, urlPosStart, urlposEnd : integer;//
    beforeName, URLTemp, AliasName, NameTemp, RealName, ifAlias : string; //
///////////////////////////////////////////////////////////////////////////////////////////

Begin

//Search Name or Pseudo or part of name (with start in same alphabetic page as RealName)
Curpos := Pos(nomAct, HTML);

If curpos > 0 then begin

endPos := curpos;

While (curpos > 0) AND (curpos < PosFrom('<h2 class="index">Actress:', HTML, Endpos)) do begin
endpos := curpos;
actPosStart:= PrevPos('>', HTML, curpos);
actPosEnd := Posfrom('</', HTML, actposStart);
NameTemp := Trim(Copy(HTML, actPosStart+1, (actPosEnd-actPosStart-1)));
beforeName := Trim(Copy(HTML, actposStart-3, 1));

   If copy(NameTemp,1,9) = 'alias for' then
     ifAlias := 'True'
   else
   ifAlias := '';


  Case NameTemp of
    nomAct :  Begin                     //Same name as Title
    //logmessage('Same Name as title');
            Case BeforeName of
              'c' : Begin             //Real Name
              RealName := NameTemp;
              AliasName := NameTemp;
              // Get URL
              urlPosStart := Prevpos('href="', HTML, actposStart);
        urlPosend := PosFrom('" class="', HTML, urlPosstart);
        URLTemp := BASE_URL + Trim(Copy(HTML, urlposStart + 6, (urlPosEnd-urlPosStart-6)));
        AddSearchResult(AliasName, NameTemp, '', LowerCase(URLTemp),'');
        LogMessage('TYPE I');
              end;
             
            else begin              // Good Name but Alias
            //logmessage('Good Name but Alias');
              AliasName := NomAct;
              // Real Name
              actalPosStart := Posfrom('alias for ', HTML, actposEnd);
        actalposEnd := Posfrom('</span>', HTML, actalposstart);
        RealName := Trim(Copy(HTML, (actalposStart + 10), (actalposEnd - actalposStart - 10)));
        // Name Temp
        NameTemp := 'Alias for ' + RealName;
        // Get URL
        urlPosStart := PrevPos('href="', HTML, actPosstart);
        urlPosend := PosFrom('" class="', HTML, urlPosstart);
        URLTemp := BASE_URL + Trim(Copy(HTML, urlposStart + 6, (urlPosEnd-urlPosStart-6)));
        AddSearchResult(AliasName, NameTemp, '', LowerCase(URLTemp),'');
        LogMessage('TYPE II');
              end;
            end;
    end;
    else begin
      //Alias Name
          If ifAlias <> 'True' then begin
            If Copy(HTML, actPosStart-1,1) <> '>' then actPosStart := PrevPos('>', HTML, curpos);
      actPosEnd := Posfrom('</', HTML, actposStart);
      AliasName := Trim(Copy(HTML, actPosStart+1, (actPosEnd-actPosStart-1)));
      beforeName := Trim(Copy(HTML, actposStart-3, 1));
   
        Case beforename of
          'c' : Begin                   // Alias is real Name
              // Real Name
              RealName := AliasName;
              // Get URL
              urlPosStart := Prevpos('href="', HTML, actposStart);
        urlPosend := PosFrom('" class="', HTML, urlPosstart);
        URLTemp := BASE_URL + Trim(Copy(HTML, urlposStart + 6, (urlPosEnd-urlPosStart-6)));
        AddSearchResult(AliasName, RealName, '', LowerCase(URLTemp),'');
        logmessage('TYPE III');
          end;
       
        else begin
              // Real Name
              actalPosStart := Posfrom('alias for ', HTML, actPosEnd);
        actalPosEnd := Posfrom('</span>', HTML, actalPosStart);
        RealName := Trim(Copy(HTML, (actalposStart + 10), (actalposEnd - actalposStart - 10)));
        NameTemp := 'alias for ' + Realname;
        // Get URL
        urlPosStart := PrevPos('href="', HTML, actPosstart);
        urlPosend := PosFrom('" class="', HTML, urlPosstart);
        URLTemp := BASE_URL + Trim(Copy(HTML, urlposStart + 6, (urlPosEnd-urlPosStart-6)));
        AddSearchResult(AliasName, NameTemp, '', LowerCase(URLTemp),'');
        Logmessage('TYPE IV');
          end;
        end;
          end 
      else begin                  // Name is in Alias for ......
      logmessage ('trouve dans alias');
              // Alias Name
              actPosStart := Prevpos('"acta">', HTML, curpos);
              actPosEnd := Posfrom('</a>', HTML, actPosStart);
              Aliasname := Trim(Copy(HTML, (actPosStart + 7), (actPosEnd - actPosStart - 7)));
              // Real Name
              actalPosStart := Posfrom('alias for ', HTML, actposEnd);
        actalPosEnd := Posfrom('</span>', HTML, actalposStart);
              RealName := Trim(Copy(HTML, (actalposStart + 10), (actalposEnd - actalposStart - 10)));
              // Get URL
        urlPosStart := PrevPos('href="', HTML, actalPosstart);
        urlPosend := PosFrom('" class="', HTML, urlPosstart);
        URLTemp := BASE_URL + Trim(Copy(HTML, urlposStart + 6, (urlPosEnd-urlPosStart-6)));
        AddSearchResult(AliasName, NameTemp, '', LowerCase(URLTemp),'');
        actPosEnd := PosFrom('href="', HTML, actalPosEnd);
        logmessage('TYPE V');
end;
    end;
  end;
curpos := PosFrom(nomAct, HTML, actPosEnd);
end;
  end;
end;

For Natacha I tried this and now it works.
Thank you.
Probably tomorrow, followed by some corrections and additions to the script.
Ivek23
Win 7 32bit, 64bit   PVD v0.9.9.21


Offline Ivek23

  • Global Moderator
  • *****
  • Posts: 1899
    • View Profile
Re: Script for egafd.com
« Reply #104 on: December 27, 2011, 11:46:34 am »
Here is a promise:

Added:
  • I fixed a small bug in the Born.
  • Added correction Birthday for better search years.
  • Added correction DeathDate for better search years.
  • Added link to Web Sites.
  • Added link to the Internet Clubs and Groups.
  • Both together for data transfer in Comment (Komentarji) field.Pictures attached.
  • Corrected the following in Bio (part of this added code below).
Code: [Select]
//if (Lien <> '') AND (Born = '') then
//AddFieldValue(pfBio, Lien);
//if (Lien  <> '') AND (Born <> '') then
//AddFieldValue(pfBio, Born + #13#10 + Lien);
if (Lien <> '') AND (Born2 = '') then
AddFieldValue(pfBio, Lien);
if (Lien  <> '') AND (Born2 <> '') then
AddFieldValue(pfBio, Born2 + #13#10 + Lien);
end;

Deleted:
  • In TabCountry removed Chinese and Greek due to incorrect data

The reason why I do the following:
An example of Chinese:
Chinese tattoo ---> incorrect Chinese the Birthplace
An example of Greek:
Green ---> incorrect in Greek the Birthplace

Proper two should not be recorded the Birthplace.

egafd_people (4)(Ivek23)14 script attached


[attachment deleted by admin]
« Last Edit: December 27, 2011, 11:54:57 am by Ivek23 »
Ivek23
Win 7 32bit, 64bit   PVD v0.9.9.21


Offline pra15

  • Power User
  • ****
  • Posts: 164
    • View Profile
Re: Script for egafd.com
« Reply #105 on: December 27, 2011, 04:14:59 pm »
Thank you, i'll see that, i'm working in search procedure in egafd_movie!

Offline Ivek23

  • Global Moderator
  • *****
  • Posts: 1899
    • View Profile
Re: Script for egafd.com
« Reply #106 on: December 27, 2011, 06:12:05 pm »
Thank you, i'll see that, i'm working in search procedure in egafd_movie!

Thanks, I look forward to the results of the work.
Ivek23
Win 7 32bit, 64bit   PVD v0.9.9.21


Offline Ivek23

  • Global Moderator
  • *****
  • Posts: 1899
    • View Profile
Re: Script for egafd.com
« Reply #107 on: December 28, 2011, 01:40:46 pm »
  • Corrected link to Web Sites and Internet Clubs and Groups.

The code is now as follows:

Code: [Select]
end; /////----- End of infos in <Films>
   
//if (Lien <> '') AND (Born = '') then
//AddFieldValue(pfBio, Lien);
//if (Lien  <> '') AND (Born <> '') then
//AddFieldValue(pfBio, Born + #13#10 + Lien);
if (Lien <> '') AND (Born2 = '') then
AddFieldValue(pfBio, Lien);
if (Lien  <> '') AND (Born2 <> '') then
AddFieldValue(pfBio, Born2 + #13#10 + Lien);
end;


/////----- Infos in <Web Sites>
If  Pos('<th>Films</th>', HTML) > 0 then begin

// WEB SITES: //

curpos := Pos('<th>Web Sites</th>', HTML);
    LogMessage('Web Sites readout');
    if curPos > 0 then    begin

Sites :=  '    • •     Web Sites   • • ';

endPos := curPos;
curPos := PosFrom('<a class="lnk" target="_new" href="', HTML, curPos);
while (curPos > 0) AND (curPos < PosFrom('<p class="cpyrgt" align="center">', HTML, endPos)) do begin
curPos := curPos + Length('<a class="lnk" target="_new" href="');
endPos := PosFrom('">', HTML, curPos);
URL1 := Copy(HTML, curPos, endPos - curPos);
URL1 := BASE_URL + URL1;
curPos := endPos + 2;
endPos := PosFrom('</a></li>', HTML, curPos);
Name := Copy(HTML, curPos, endPos - curPos);
     

/// Total Line: ///
If Sites <> '' then
Sites := Sites + #13;
If URL1 <> '' then
Sites := Sites + '<link url="' + URL1 + '">' + Name + '</link>';

LogMessage('WEB SITES :' + Sites);

               
          curPos := PosFrom('<a href="', HTML, actPosEnd);
       end;
end; /////----- End of infos in <Web Sites>

If Sites <> '' then
//AddFieldValueXML('comment', Sites);
LogMessage('WEB SITES :' + Sites);
fullinfo:= fullinfo + Sites + #13;
LogMessage(fullinfo);
//AddFieldValueXML('comment', fullinfo);
end;

/////----- Infos in <Internet Clubs and Groups>
If  Pos('<th>Internet Clubs and Groups</th>', HTML) > 0 then begin

// CLUB AND GROUPS: //

curpos := Pos('<th>Internet Clubs and Groups</th>', HTML);
    LogMessage('Internet Clubs and Groups readout');
    if curPos > 0 then    begin

Sites1 :=  '   • •   Internet Clubs and Groups:  • •';

If Sites1 <> '' then
Sites1 := Sites1;

LogMessage('CLUB AND GROUPS :' + Sites1);

    If Sites1 <> '' then
//AddFieldValueXML('comment', Sites1);
LogMessage('CLUB AND GROUPS :' + Sites1);
fullinfo:= fullinfo + #13 + Sites1 + #13;
LogMessage(fullinfo);
//AddFieldValueXML('comment', fullinfo);

   end;
end; /////----- End of infos in <Internet Clubs and Groups>

    /////----- Infos in <Bomis Rings>
If  Pos('<li>Bomis Rings:</li>', HTML) > 0 then begin
   
// BOMIS: //

curpos := Pos('<li>Bomis Rings:</li>', HTML);
    LogMessage('Bomis Rings readout');
    if curPos > 0 then    begin

Bomis :=  '   •   Bomis   •';

endPos := curPos;
curPos := PosFrom('<a class="lnk" target="_new" href="', HTML, curPos);
while (curPos > 0) AND (curPos < PosFrom('</ul>', HTML, endPos)) do begin
curPos := curPos + Length('<a class="lnk" target="_new" href="');
endPos := PosFrom('">', HTML, curPos);
URL1 := Copy(HTML, curPos, endPos - curPos);
URL1 := BASE_URL + URL1;
curPos := endPos + 2;
endPos := PosFrom('</a></li>', HTML, curPos);
Name := Copy(HTML, curPos, endPos - curPos);
     

/// Total Line: ///
If Bomis <> '' then
Bomis := Bomis + #13;
If URL1 <> '' then
Bomis := Bomis + '<link url="' + URL1 + '">' + Name + '</link>';

LogMessage('BOMIS :' + Bomis);

  curPos := PosFrom('<a class="lnk" target="_new" href="', HTML, curPos);
   end; 
end; /////----- End of infos in <Bomis Rings>

    If Bomis <> '' then
//AddFieldValueXML('comment', Bomis);
LogMessage('BOMIS :' + Bomis);
fullinfo:= fullinfo + Bomis + #13;
LogMessage(fullinfo);
//AddFieldValueXML('comment', fullinfo);
end;

/////----- Infos in <MSN Groups>
If  Pos('<li>MSN Groups:</li>', HTML) > 0 then begin
   
// MSN: //

curpos := Pos('<li>MSN Groups:</li>', HTML);
    LogMessage('MSN Groups readout');
    if curPos > 0 then    begin

MSN :=    '   •   MSN   •';

endPos := curPos;
curPos := PosFrom('<a class="lnk" target="_new" href="', HTML, curPos);
while (curPos > 0) AND (curPos < PosFrom('</ul>', HTML, endPos)) do begin
curPos := curPos + Length('<a class="lnk" target="_new" href="');
endPos := PosFrom('">', HTML, curPos);
URL1 := Copy(HTML, curPos, endPos - curPos);
URL1 := BASE_URL + URL1;
curPos := endPos + 2;
endPos := PosFrom('</a></li>', HTML, curPos);
Name := Copy(HTML, curPos, endPos - curPos);
     

/// Total Line: ///
If MSN <> '' then
MSN := MSN + #13;
If URL1 <> '' then
MSN := MSN + '<link url="' + URL1 + '">' + Name + '</link>';

LogMessage ('MSN :' + MSN);

  curPos := PosFrom('<a class="lnk" target="_new" href="', HTML, curPos);
   end; 
end; /////----- End of infos in <MSN Groups>

    If MSN <> '' then
//AddFieldValueXML('comment', MSN);
LogMessage('MSN  :' + MSN);
fullinfo:= fullinfo + MSN  + #13;
LogMessage(fullinfo);
//AddFieldValueXML('comment', fullinfo);
end;

/////----- Infos in <MySpace>
If  Pos('<li>MySpace:</li>', HTML) > 0 then begin
   
// MYSPACE: //

curpos := Pos('<li>MySpace:</li>', HTML);
    LogMessage('MySpace readout');
    if curPos > 0 then    begin

MySpace :=    '   •   MySpace   •';

endPos := curPos;
curPos := PosFrom('<a class="lnk" target="_new" href="', HTML, curPos);
while (curPos > 0) AND (curPos < PosFrom('</ul>', HTML, endPos)) do begin
curPos := curPos + Length('<a class="lnk" target="_new" href="');
endPos := PosFrom('">', HTML, curPos);
URL1 := Copy(HTML, curPos, endPos - curPos);
URL1 := BASE_URL + URL1;
curPos := endPos + 2;
endPos := PosFrom('</a></li>', HTML, curPos);
Name := Copy(HTML, curPos, endPos - curPos);
     

/// Total Line: ///
If MySpace <> '' then
MySpace := MySpace + #13;
If URL1 <> '' then
MySpace := MySpace + '<link url="' + URL1 + '">' + Name + '</link>';

LogMessage('MYSPACE :' + MySpace);

  curPos := PosFrom('<a class="lnk" target="_new" href="', HTML, curPos);
   end; 
end; /////----- End of infos in <MySpace>

    If MySpace <> '' then
//AddFieldValueXML('comment', MySpace);
LogMessage('MYSPACE :' + MySpace);
fullinfo:= fullinfo + MySpace + #13;
LogMessage(fullinfo);
//AddFieldValueXML('comment', fullinfo);
end;
 
/////----- Infos in <Wikipedia>
If  Pos('<li>Wikipedia:</li>', HTML) > 0 then begin
   
// WIKIPEDIA: //

curpos := Pos('<li>Wikipedia:</li>', HTML);
    LogMessage('Wikipedia readout');
    if curPos > 0 then    begin

Wikipedia :=    '   •   Wikipedia   •';

endPos := curPos;
curPos := PosFrom('<a class="lnk" target="_new" href="', HTML, curPos);
while (curPos > 0) AND (curPos < PosFrom('</ul>', HTML, endPos)) do begin
curPos := curPos + Length('<a class="lnk" target="_new" href="');
endPos := PosFrom('">', HTML, curPos);
URL1 := Copy(HTML, curPos, endPos - curPos);
URL1 := BASE_URL + URL1;
curPos := endPos + 2;
endPos := PosFrom('</a></li>', HTML, curPos);
Name := Copy(HTML, curPos, endPos - curPos);
     

/// Total Line: ///
If Wikipedia <> '' then
Wikipedia := Wikipedia + #13;
If URL1 <> '' then
Wikipedia := Wikipedia + '<link url="' + URL1 + '">' + Name + '</link>';

LogMessage('WIKIPEDIA :' + Wikipedia);

  curPos := PosFrom('<a class="lnk" target="_new" href="', HTML, curPos);
   end; 
end; /////----- End of infos in <Wikipedia>

    If Wikipedia <> '' then
//AddFieldValueXML('comment', Wikipedia);
LogMessage('WIKIPEDIA :' + Wikipedia);
fullinfo:= fullinfo + Wikipedia + #13;
LogMessage(fullinfo);
//AddFieldValueXML('comment', fullinfo);
end;

/////----- Infos in <Yahoo! Groups>
If  Pos('<li>Yahoo! Groups:</li>', HTML) > 0 then begin
   
// YAHOO: //

curpos := Pos('<li>Yahoo! Groups:</li>', HTML);
    LogMessage('Yahoo! Groups readout');
    if curPos > 0 then    begin

Yahoo :=  #10 +  '   •   Yahoo! Groups   •';

endPos := curPos;
curPos := PosFrom('<a class="lnk" target="_new" href="', HTML, curPos);
while (curPos > 0) AND (curPos < PosFrom('</ul>', HTML, endPos)) do begin
curPos := curPos + Length('<a class="lnk" target="_new" href="');
endPos := PosFrom('">', HTML, curPos);
URL1 := Copy(HTML, curPos, endPos - curPos);
URL1 := BASE_URL + URL1;
curPos := endPos + 2;
endPos := PosFrom('</a></li>', HTML, curPos);
Name := Copy(HTML, curPos, endPos - curPos);
     

/// Total Line: ///
If Yahoo <> '' then
Yahoo := Yahoo + #13;
If URL1 <> '' then
Yahoo := Yahoo + '<link url="' + URL1 + '">' + Name + '</link>';

LogMessage('YAHOO :' + Yahoo);
  curPos := PosFrom('<a class="lnk" target="_new" href="', HTML, curPos);
   end; 
end; /////----- End of infos in <Yahoo! Groups>

    If Yahoo <> '' then
//AddFieldValueXML('comment', Yahoo);
LogMessage('YAHOO :' + Yahoo);
fullinfo:= fullinfo + Yahoo + #13;
LogMessage(fullinfo);
//AddFieldValueXML('comment', fullinfo);
end;
   
AddFieldValueXML('comment', fullinfo);


// Photo:
curPos :=Pos('src="/actresses/id/',HTML);
if curPos > 0 then begin
EndPos := PosFrom('" width', HTML, curPos);
PhotoURL := BASE_URL + Copy(HTML, curPos + 5, EndPos - curPos - 5);
LogMessage('URL de la photo: '+ PhotoURL);
{PhotoURL := HTMLToText (PhotoURL);}
AddImageURL(4, PhotoURL);
end
else begin
PhotoURL := '';
end;

end;
Ivek23
Win 7 32bit, 64bit   PVD v0.9.9.21


Offline pra15

  • Power User
  • ****
  • Posts: 164
    • View Profile
Re: Script for egafd.com
« Reply #108 on: December 28, 2011, 03:01:12 pm »
Here egafd_Movie with search procedure.

I change a little  :
If no result in the actual page (first letter alphabetic), prlist show others alphabetic pages for choice an other page.
I use two different searching sentence, the complete Title or a combination of the two first words of the title (we can improve more possibilities easily later).
For example :
Title = The Starter ====> The script search : 'the stater' and 'starter'
Title = The Young Starter =====> 'the young starter' and 'young'
Title = Starter, The ======> 'the starter' and 'starter' (if option in PVD place The in the end)

I made some test and it seems to work but.....

False there are bugs,
First change in GetDownloadUrl :
Code: [Select]
firstStr := LowerCase(Copy(nMovie, 1, (Length(nMovie)-(Length(nMovie)-1))));
and
Code: [Select]
//Search:
  I:= 0;
 
  While (I < nSearch) AND (ifFind = 0) do Begin
  logMessage ('while commence');



[attachment deleted by admin]
« Last Edit: December 28, 2011, 04:10:44 pm by pra15 »

Offline Ivek23

  • Global Moderator
  • *****
  • Posts: 1899
    • View Profile
Re: Script for egafd.com
« Reply #109 on: December 29, 2011, 09:22:45 am »
Already added the aforementioned changes.

egafd_people (pra15)15 script added

[attachment deleted by admin]
Ivek23
Win 7 32bit, 64bit   PVD v0.9.9.21


Offline pra15

  • Power User
  • ****
  • Posts: 164
    • View Profile
Re: Script for egafd.com
« Reply #110 on: December 29, 2011, 02:15:15 pm »
I added notes in prList and changed somes errors in search procedure. (egafd_movie)

[attachment deleted by admin]
« Last Edit: December 29, 2011, 02:18:59 pm by pra15 »

Offline Ivek23

  • Global Moderator
  • *****
  • Posts: 1899
    • View Profile
Re: Script for egafd.com
« Reply #111 on: December 30, 2011, 12:27:30 pm »
egafd_movie
egafd_Movie(12) script

Added:
  • Corrected bug in the code of Director.
  • Added full transfer of data to Director  in Comment field.
  • The Bio I fixed a small error in Role code.
  • Added a version and name of the script.

Deleted:
  • Blocked the transfer of all data for Director in field Director, transfer only the first director of the list.

The reason why I do the following:
For Director:
When the Director is now displayed only the first director now, because otherwise the People section you can not find information for example, such associations in  Director Title:
  • Alessandro Perrella as Alex Perry
  • Alessandro Perrella aas Alex Perry
  • Alessandro Perrella / Alex Perry
  • Alessandro Perrella,  Alex Perry
  • Alessandro Perrella and Alex Perry

egafd_Movie(12) script attached

[attachment deleted by admin]
Ivek23
Win 7 32bit, 64bit   PVD v0.9.9.21


Offline Ivek23

  • Global Moderator
  • *****
  • Posts: 1899
    • View Profile
Re: Script for egafd.com
« Reply #112 on: December 30, 2011, 12:27:51 pm »
egafd_movie
egafd_mod12 script

Added:
  • Corrected bug in the code of Director.
  • Added full transfer of data to Director  in Comment field.
  • The Bio I fixed a small error in Role code.
  • Added a version and name of the script.
  • Added Notes.
  • Added Suppliers.

Deleted:
  • Blocked the transfer of all data for Director in field Director, transfer only the first director of the list.

The reason why I do the following:
For Director:
When the Director is now displayed only the first director now, because otherwise the People section you can not find information for example, such associations in  Director Title:
  • Alessandro Perrella as Alex Perry
  • Alessandro Perrella aas Alex Perry
  • Alessandro Perrella / Alex Perry
  • Alessandro Perrella,  Alex Perry
  • Alessandro Perrella and Alex Perry

egafd_mod12 script attached

[attachment deleted by admin]
Ivek23
Win 7 32bit, 64bit   PVD v0.9.9.21


Offline Ivek23

  • Global Moderator
  • *****
  • Posts: 1899
    • View Profile
Re: Script for egafd.com
« Reply #113 on: December 30, 2011, 02:22:40 pm »
egafd_movie
Small  change:


Code: [Select]
//Director
   dbgstrg := '';
   curPos := Pos('<td valign="top">Director: ', HTML);
   EndPos := curPos;
         LogMessage('getting Director');
         dbgstrg:= TextBetween(HTML, '<td valign="top">Director: </td><td width="100%" class="notes">', '</td>', False, CurPos);
LogMessage('DIRECTOR:' + dbgstrg);

If dbgstrg <> '' then
AddFieldValueXML('comment', ' • • ' + SCRIPT_NAME + ' ' + SCRIPT_VERSION +
' • •   ' + 'Directors:  ' + dbgstrg)
            else
AddFieldValueXML('comment', ' • • ' + SCRIPT_NAME + ' ' + SCRIPT_VERSION +
' • •   ');

         debug_pos1:=Pos('(',dbgstrg) OR Pos(', ',dbgstrg);
if debug_pos1 >0 then
dbgstrg := Copy(dbgstrg,0,debug_pos1-1);
LogMessage(dbgstrg);

debug_pos1:=Pos(' as ',dbgstrg) OR Pos(' aas ',dbgstrg);
if debug_pos1 >0 then
dbgstrg := Copy(dbgstrg,0,debug_pos1-1);
LogMessage(dbgstrg);

debug_pos1:=Pos('/',dbgstrg) OR Pos(' and ',dbgstrg);
if debug_pos1 >0 then
dbgstrg := Copy(dbgstrg,0,debug_pos1-1);
LogMessage(dbgstrg);

          If dbgstrg <> '' then
AddMoviePerson(dbgstrg, '', '', '', ctDirectors);
Ivek23
Win 7 32bit, 64bit   PVD v0.9.9.21


Offline pra15

  • Power User
  • ****
  • Posts: 164
    • View Profile
Re: Script for egafd.com
« Reply #114 on: December 30, 2011, 05:38:31 pm »
Thank you and happy new year at all!

Offline Ivek23

  • Global Moderator
  • *****
  • Posts: 1899
    • View Profile
Re: Script for egafd.com
« Reply #115 on: December 30, 2011, 05:55:03 pm »
Ivek23
Win 7 32bit, 64bit   PVD v0.9.9.21


Offline Ivek23

  • Global Moderator
  • *****
  • Posts: 1899
    • View Profile
Re: Script for egafd.com
« Reply #116 on: January 02, 2012, 02:52:56 pm »
egafd_movie
For prList :

Corrected search results for part of the code for alias Name,
Code: [Select]
end 
      else begin                  // Name is in Alternative title for ......
              // Alias Name
              actPosStart := Prevpos('"flma">', HTML, curpos);
              actPosEnd := Posfrom('</a>', HTML, actPosStart);
              Aliasname := Trim(Copy(HTML, (actPosStart + 7), (actPosEnd - actPosStart - 7)));
              Logmessage('AliasName: '+ AliasName);
              // Real Name

where the missing first letter in the mail (not was) for alternative Movie title.
Now is OK.

Whole prList code:

Code: [Select]
//---------- Procedure SearchResults ----------//
// Create list of movies found during the search
procedure SearchResults (HTML : String);
Var
URLXPage, URLTemp, NameTemp, BeforeName, ifAlias, AliasName, RealName, firstStr2, noteSearch : String;
TabPartTitle, TabNoteSearch : TwideArray;
TabPartSearch : Array[0..1] of string;
nSearch, ifFind, actPosStart, actPosEnd, URLPosStart, URLPosEnd, notPosStart, notPosEnd : Integer;
CurPos, endPos, actalPosStart, actalPosEnd, TypPVD : Integer;

essai : string;

Begin
  ifFind := 0;      //Initialisation variable
 
// Separate parts of title :
    If Pos(#32,nMovie) = 0 then begin
    nSearch := 1;
    TabPartSearch[0] := nMovie;
    end
    else begin
    ExplodeString(nMovie,TabPartTitle,#32);
// Case where option in PVD is 'Title, the' :
    If Copy(TabPartTitle[High(TabPartTitle)-1],Length(TabPartTitle[High(TabPartTitle)-1]),1) = ',' then begin
    TypPVD := 1;
      TabPartTitle[High(TabpartTitle)-1] := Copy(TabPartTitle[High(TabpartTitle)-1], 1, Length(TabpartTitle[High(TabpartTitle)-1])-1);
      For I := Low(TabPartTitle) to (High(TabPartTitle)-1) do
      Begin
      nMovie := '';
        If I = 0 then begin
          nMovie := TabpartTitle[I];
          end
          else begin
          nMovie := nMovie + #32 + TabPartTitle[I];
          end;
      end;
      nMovie := TabPartTitle[High(TabPartTitle)] + #32 + nMovie;
      LogMessage(nMovie);
      firstStr2 := LowerCase(Copy(TabPartTitle[High(TabPartTitle)], 1 ,1));
      end
      else begin
      TypPVD := 0;
      FirstStr2 := LowerCase(Copy(TabPartTitle[1],1,1));
      end;
      For I := Low(TabPartTitle) to High(TabPartTitle) do
      Begin
      TabPartTitle[I] := Lowercase(TabPartTitle[I]);
      end;
     
// Second value to search :
    TabPartSearch [0] := LowerCase(nMovie);
    nSearch := 1;
    If High(TabPartTitle) > 0 then begin
      If Length(TabPartTitle[0]) > 3 then begin
      TabPartSearch [1] := TabPartTitle[0];
      nSearch := 2;
      end
      else
      If (Length(TabPartTitle[0]) < 4) AND (Length(TabPartTitle[1]) > 3) then begin
      TabPartSearch [1] := TabPartTitle[1];
      nSearch := 2;
      end
      else begin
      TabPartSearch [1] := TabPartTitle[0] + #32 + TabPartTitle[1];
      nSearch := 2;
      end;
    LogMessage('Second search : ' + TabPartSearch[1]);
    end;
    LogMessage ('nSearch' + IntToStr(nSearch));
    end;
   
//Search:
  I:= 0;
 
  While (I < nSearch) AND (ifFind = 0) do Begin
  logMessage ('while commence');
     
    Curpos := Pos(TabPartSearch[I], HTML);

    If curpos > 0 then begin
  endPos := curpos;

      While (curpos > 0) AND (curpos < PosFrom('<h2 class="index">Films:', HTML, Endpos)) do begin
     endpos := curpos;
     actPosStart:= PrevPos('>', HTML, curpos);
     actPosEnd := Posfrom('</', HTML, actposStart);
     NameTemp := LowerCase(Trim(Copy(HTML, actPosStart+1, (actPosEnd-actPosStart-1))));
     LogMessage ('NameTemp: '+ NameTemp);
     LogMessage ('nmovie: '+ nMovie);
     beforeName := Trim(Copy(HTML, actposStart-3, 1));

     If copy(NameTemp,1,21) = 'alternative title for' then
        ifAlias := 'True'
      else
      ifAlias := '';


  Case NameTemp of
    nMovie :  Begin                     //Same name as Title
    //logmessage('Same Movie as title');
            Case BeforeName of
              'l' : Begin             //Real Name
              RealName := NameTemp;
              AliasName := NameTemp;
              //Notes
              notPosStart := Posfrom('/a>', HTML, Curpos);
              essai :=  copy(HTML, notPosStart+3,1);
              LogMessage('essai: ' + essai);
                If copy(HTML, notPosStart+3,1) = #32 then begin
                logmessage('if begin');
                  notPosStart := PosFrom('class="notes">', HTML, notPosstart)+14;
                  notPosEnd := PosFrom('</i>', HTML, notPosStart);
                  noteSearch := Trim(Copy(HTML, notPosStart, (notPosEnd-notPosStart)));
                  logmessage(notesearch);
                  end
                else begin
                  noteSearch := '';
                end;
              // Get URL
              urlPosStart := Prevpos('href="', HTML, actposStart);
        urlPosend := PosFrom('" class="', HTML, urlPosstart);
        URLTemp := BASE_URL + Trim(Copy(HTML, urlposStart + 6, (urlPosEnd-urlPosStart-6)));
        AddSearchResult(AliasName, NoteSearch, '', LowerCase(URLTemp),'');
        actPosEnd := PosFrom('href="', HTML, urlPosEnd);
        ifFind := 1;
        LogMessage('TYPE I: Same Title as original movie');
              end;
             
            else begin              // Good Name but Alternative title
            //logmessage('Good Name but Alias');
              AliasName := nMovie;
              // Real Name
              actalPosStart := Posfrom('alternative title for ', HTML, actposEnd);
        actalposEnd := Posfrom('</span>', HTML, actalposstart);
        RealName := Trim(Copy(HTML, (actalposStart + 22), (actalposEnd - actalposStart - 22)));
        // Name Temp
        NameTemp := 'Alternative title for ' + RealName;
        // Get URL
        urlPosStart := PrevPos('href="', HTML, actPosstart);
        urlPosend := PosFrom('" class="', HTML, urlPosstart);
        URLTemp := BASE_URL + Trim(Copy(HTML, urlposStart + 6, (urlPosEnd-urlPosStart-6)));
        AddSearchResult(AliasName, NameTemp, '', LowerCase(URLTemp),'');
        actPosEnd := PosFrom('href="', HTML, urlPosEnd);
        ifFind := 1;
        LogMessage('TYPE II: Same Title as an alternative title of a Movie');
              end;
            end;
    end;
    else begin
      //Part of Name
          If ifAlias <> 'True' then begin
            If Copy(HTML, actPosStart-1,1) <> '>' then actPosStart := PrevPos('>', HTML, curpos);
      actPosEnd := Posfrom('</', HTML, actposStart);
      AliasName := Trim(Copy(HTML, actPosStart+1, (actPosEnd-actPosStart-1)));
      beforeName := Trim(Copy(HTML, actposStart-3, 1));
   
        Case beforename of
          'l' : Begin                   // Title is a part of a real Movie
              // Real Name
              RealName := AliasName;
              logmessage(Realname);
              logmessage(AliasName);
              //Notes
              notPosStart := Posfrom('/a>', HTML, Curpos);
              essai :=  copy(HTML, notPosStart+3,1);
              LogMessage('essai: ' + essai);
                If copy(HTML, notPosStart+3,1) = #32 then begin
                logmessage('if begin');
                  notPosStart := PosFrom('class="notes">', HTML, notPosstart)+14;
                  notPosEnd := PosFrom('</i>', HTML, notPosStart);
                  noteSearch := Trim(Copy(HTML, notPosStart, (notPosEnd-notPosStart)));
                  logmessage(notesearch);
                  end
                else begin
                  noteSearch := '';
                end;
              // Get URL
              urlPosStart := Prevpos('href="', HTML, actposStart);
        urlPosend := PosFrom('" class="', HTML, urlPosstart);
        URLTemp := BASE_URL + Trim(Copy(HTML, urlposStart + 6, (urlPosEnd-urlPosStart-6)));
        logmessage(URLTemp);
        AddSearchResult(RealName, NoteSearch, '', LowerCase(URLTemp),'');
        ifFind := 1;
        actPosEnd := PosFrom('href="', HTML, urlPosEnd);
        logmessage('TYPE III: Part of a Real Name');
          end;
       
        else begin
              // Real Name
              actalPosStart := Posfrom('alternative title for ', HTML, actPosEnd);
        actalPosEnd := Posfrom('</span>', HTML, actalPosStart);
        RealName := Trim(Copy(HTML, (actalposStart + 10), (actalposEnd - actalposStart - 10)));
        NameTemp := 'alternative title for ' + Realname;
        // Get URL
        urlPosStart := PrevPos('href="', HTML, actPosstart);
        urlPosend := PosFrom('" class="', HTML, urlPosstart);
        URLTemp := BASE_URL + Trim(Copy(HTML, urlposStart + 6, (urlPosEnd-urlPosStart-6)));
        AddSearchResult(AliasName, NameTemp, '', LowerCase(URLTemp),'');
        actPosEnd := PosFrom('href="', HTML, actalPosEnd);
        ifFind := 1;
        Logmessage('TYPE IV: Part of an alternative Name');
          end;
        end;
          end 
      else begin                  // Name is in Alternative title for ......
              // Alias Name
              actPosStart := Prevpos('"flma">', HTML, curpos);
              actPosEnd := Posfrom('</a>', HTML, actPosStart);
              Aliasname := Trim(Copy(HTML, (actPosStart + 7), (actPosEnd - actPosStart - 7)));
              Logmessage('AliasName: '+ AliasName);
              // Real Name
              actalPosStart := Posfrom('alternative title for ', HTML, actposEnd);
        actalPosEnd := Posfrom('</span>', HTML, actalposStart);
              RealName := Trim(Copy(HTML, (actalposStart + 22), (actalposEnd - actalposStart - 22)));
              LogMessage('RealName: '+ RealName);
              // Get URL
        urlPosStart := PrevPos('href="', HTML, actalPosstart);
        urlPosend := PosFrom('" class="', HTML, urlPosstart);
        URLTemp := BASE_URL + Trim(Copy(HTML, urlposStart + 6, (urlPosEnd-urlPosStart-6)));
        AddSearchResult(AliasName, NameTemp, '', LowerCase(URLTemp),'');
        ifFind := 1;
        actPosEnd := PosFrom('href="', HTML, urlPosEnd);
        logmessage('TYPE V: Part find in alternative title for...');
end;
    end;
  end;
curpos := PosFrom(TabPartSearch[I], HTML, actPosEnd);
end;
  end;
  I := I + 1;
  end;    // End first while

// Add others alphabetics page in prList (who had not seen) if no result in actual page:
  If (ifFind = 0) then begin
    ShowMessage('Try to find movie in another alphabetic page!', 'MOVIE NOT FIND IN THIS PAGE :');
    For A := Low(TabSeenXPage) to High(TabSeenXPage) do
    Begin
      If TabSeenXPage[A] = '0' then begin
        URLXPage := 'http://www.egafd.com/films/index.php/index/' + TabXPage[A];
        AddSearchResult('Search in Alphabetic page',UpperCase(TabXPage[A]),'', URLXPage,'');
      end;
    end;
  end
  else begin
      CurPos := Pos('<title>Films: ', HTML);
      If (Copy(URLSearch, Length(URLSearch), 1)) = (LowerCase(Copy(HTML,Curpos+14,1))) then begin
        URLXPage := 'http://www.egafd.com/films/index.php/index/' + firstStr2;
        AddSearchResult('Search in Alphabetic page',UpperCase(firstStr2),'', URLXPage,'');
        end;
    end;
 
end;


//---------- PARSE PAGE ----------//
Ivek23
Win 7 32bit, 64bit   PVD v0.9.9.21


Offline Ivek23

  • Global Moderator
  • *****
  • Posts: 1899
    • View Profile
Re: Script for egafd.com
« Reply #117 on: January 02, 2012, 06:51:06 pm »
egafd_movie
Small  change for Director:


egafd_movie
The reason why I do the following:
For Director:
When the Director is now displayed only the first director now, because otherwise the People section you can not find information for example, such associations in  Director Title:
  • Alessandro Perrella as Alex Perry
  • Alessandro Perrella aas Alex Perry
  • Alessandro Perrella / Alex Perry
  • Alessandro Perrella,  Alex Perry
  • Alessandro Perrella and Alex Perry

Code: [Select]
//Director
   dbgstrg := '';
   curPos := Pos('<td valign="top">Director: ', HTML);
   EndPos := curPos;
         LogMessage('getting Director');
         dbgstrg:= TextBetween(HTML, '<td valign="top">Director: </td><td width="100%" class="notes">', '</td>', False, CurPos);
LogMessage('DIRECTOR:' + dbgstrg);

If dbgstrg <> '' then
AddFieldValueXML('comment', ' • • ' + SCRIPT_NAME + ' ' + SCRIPT_VERSION +
' • •   ' + 'Directors:  ' + dbgstrg)
            else
AddFieldValueXML('comment', ' • • ' + SCRIPT_NAME + ' ' + SCRIPT_VERSION +
' • •   ');

         debug_pos1:=Pos('(',dbgstrg);
if debug_pos1 >0 then
dbgstrg := Copy(dbgstrg,0,debug_pos1-1);
LogMessage(dbgstrg);

debug_pos1:=Pos(', ',dbgstrg);
if debug_pos1 >0 then
dbgstrg := Copy(dbgstrg,0,debug_pos1-1);
LogMessage(dbgstrg);

debug_pos1:=Pos(' as ',dbgstrg);
if debug_pos1 >0 then
dbgstrg := Copy(dbgstrg,0,debug_pos1-1);
LogMessage(dbgstrg);

debug_pos1:=Pos(' aas ',dbgstrg);
if debug_pos1 >0 then
dbgstrg := Copy(dbgstrg,0,debug_pos1-1);
LogMessage(dbgstrg);

debug_pos1:=Pos('/',dbgstrg);
if debug_pos1 >0 then
dbgstrg := Copy(dbgstrg,0,debug_pos1-1);
LogMessage(dbgstrg);

debug_pos1:=Pos(' and ',dbgstrg);
if debug_pos1 >0 then
dbgstrg := Copy(dbgstrg,0,debug_pos1-1);
LogMessage(dbgstrg);
     
debug_pos1:=Pos('?',dbgstrg);
if debug_pos1 >0 then
dbgstrg := Copy(dbgstrg,0,debug_pos1-1);
LogMessage(dbgstrg);

          If dbgstrg <> '' then
AddMoviePerson(dbgstrg, '', '', '', ctDirectors);

Ivek23
Win 7 32bit, 64bit   PVD v0.9.9.21


Offline pra15

  • Power User
  • ****
  • Posts: 164
    • View Profile
Re: Script for egafd.com
« Reply #118 on: January 03, 2012, 09:59:08 am »
Thank you!
Do you think we must add more style of search sentence (with 3 words for example) or this is not necessary.
« Last Edit: January 03, 2012, 10:05:33 am by pra15 »

Offline Ivek23

  • Global Moderator
  • *****
  • Posts: 1899
    • View Profile
Re: Script for egafd.com
« Reply #119 on: January 03, 2012, 10:37:26 am »
Thank you!
Do you think we must add more style of search sentence (with 3 words for example) or this is not necessary.

If the search results will certainly be better than it is in force until now, of course, and therefore more effective search movie titles, definitely yes, yes, this also makes.
We'll see where this is a test of how it works.
Ivek23
Win 7 32bit, 64bit   PVD v0.9.9.21