Quote from: pra15« on: 25 January 2012, 07:40:06 »
Hello,
Here is a little script to use BING for site who doesn't support a search page like egafd.com.
It's an exemple and we can improve it but if someone is interesting....
I use www.egafd.com for exemple but you can change the const SiteSearch and put what you want. (in the declaration at start)
I fixed search results in attached Bing_SearchMulti Script:
Bing_SearchMulti version 0.0.0.3 - Primary script
//---------- Procedure SearchResults ----------//
// Create list of movies found during the search
procedure SearchResults (HTML : String);
Var
CurPos, PosStart, EndPos : integer;
URLposStart, URLPosEnd : integer;
StartURL, Title, URL : String;
Begin
//List of other site where search page :
TabSite := ['www.bgafd.com', 'www.iafd.com', 'www.imdb.com'];
//Search Result in actual page :
StartURL := '<a href="http://' + SiteSearch;
CurPos := Pos(StartURL, HTML);
If Curpos > 0 then begin
EndPos := Curpos;
While (curpos > 0) AND (curpos < PosFrom('<![CDATA[', HTML, Endpos)) do begin
EndPos:= Curpos;
URLposStart := Curpos + 9;
URLPosEnd := PosFrom('" h="', HTML, URLposStart);
URL := Copy(HTML, URLPosStart, (URLposEnd-URLposStart));
curPos := PosFrom('">', HTML, curPos)+2;
endPos := PosFrom('</h2>', HTML, curPos);
Title := RemoveTags(Trim(Copy(HTML, curPos, endPos - curPos)), false);
AddSearchResult(URL, Title, '', LowerCase(URL), '');
curpos := PosFrom(StartURL, HTML, URLPosEnd);
End;
//Add Links to Page with other sites in TabSite:
For I := Low(TabSite) to High(TabSite) do
Begin
URL := 'www.bing.com/Search?q=site%3A' + TabSite[I] + '+%20' + MovieName;
AddSearchResult('Search in :', TabSite[I],'',LowerCase(URL),'');
end;
End;
End;
I fixed search results in attached Bing_SearchMulti_All Script:
Bing_SearchMulti_All version 0.0.0.3 - Script for search multi site(pages)
//---------- Procedure SearchResults ----------//
// Create list of movies found during the search
procedure SearchResults (HTML : String);
Var
CurPos, PosStart, EndPos : integer;
URLposStart, URLPosEnd : integer;
StartURL, Title, URL : String;
Begin
//List of other site where search page :
TabSite := ['www.imdb.com/', 'www.allmusic.com/', 'www.allmovie.com/',
'www.moviemeter.nl/film/', 'www.filmweb.pl/film/', 'www.filmweb.pl/person/'];
//Search Result in actual page :
StartURL := '<a href="http://' + SiteSearch;
CurPos := Pos(StartURL, HTML);
If Curpos > 0 then begin
EndPos := Curpos;
While (curpos > 0) AND (curpos < PosFrom('<![CDATA[', HTML, Endpos)) do begin
EndPos:= Curpos;
URLposStart := Curpos + 9;
URLPosEnd := PosFrom('" h="', HTML, URLposStart);
URL := Copy(HTML, URLPosStart, (URLposEnd-URLposStart));
curPos := PosFrom('">', HTML, curPos)+2;
endPos := PosFrom('</h2>', HTML, curPos);
Title := RemoveTags(Trim(Copy(HTML, curPos, endPos - curPos)), false);
AddSearchResult(URL, Title, '', LowerCase(URL), '');
curpos := PosFrom(StartURL, HTML, URLPosEnd);
End;
//Add Links to Page with other sites in TabSite:
For I := Low(TabSite) to High(TabSite) do
Begin
URL := 'www.bing.com/Search?q=site%3A' + TabSite[I] + '+%20' + MovieName;
AddSearchResult('Search in :', TabSite[I],'',LowerCase(URL),'');
end;
End;
End;
I fixed search results in attached Bing_SearchMulti(people) Script:
Bing_SearchMulti(people) version 0.0.0.4 - Script for search people multi site(pages)
//---------- Procedure SearchResults ----------//
// Create list of movies found during the search
procedure SearchResults (HTML : String);
Var
CurPos, PosStart, EndPos : integer;
URLposStart, URLPosEnd : integer;
StartURL, Title, URL : String;
Begin
//List of other site where search page :
TabSite := ['www.imdb.com/name/', 'www.allmusic.com/artist/', 'www.allmusic.com/album/',
'www.allmovie.com/artist/', 'www.filmweb.pl/person/', 'www.kinopoisk.ru/level/4/people/'];
//Search Result in actual page :
StartURL := '<h2><a href="http://' + SiteSearch;
CurPos := Pos(StartURL, HTML);
If Curpos > 0 then begin
EndPos := Curpos;
While (curpos > 0) AND (curpos < PosFrom('<![CDATA[', HTML, Endpos)) do begin
EndPos:= Curpos;
URLposStart := Curpos + 13;
URLPosEnd := PosFrom('" h="', HTML, URLposStart);
URL := Copy(HTML, URLPosStart, (URLposEnd-URLposStart));
curPos := PosFrom('">', HTML, curPos)+2;
endPos := PosFrom('</h2>', HTML, curPos);
Title := RemoveTags(Trim(Copy(HTML, curPos, endPos - curPos)), false);
AddSearchResult(URL, Title, '', LowerCase(URL), '');
curpos := PosFrom(StartURL, HTML, URLPosEnd);
End;
//Add Links to Page with other sites in TabSite:
For I := Low(TabSite) to High(TabSite) do
Begin
URL := 'www.bing.com/Search?q=site%3a' + TabSite[I] + PeopleName+'%s';
AddSearchResult('Search in :', TabSite[I],'',LowerCase(URL),'');
end;
End;
End;
I fixed search results in attached Bing_SearchMulti(people)(Imdb) Script:
Bing_SearchMulti(people)(Imdb) version 0.0.0.5 - Script for search only Imdb People site
//---------- Procedure SearchResults ----------//
// Create list of movies found during the search
procedure SearchResults (HTML : String);
Var
CurPos, PosStart, EndPos : integer;
URLposStart, URLPosEnd : integer;
StartURL, Title, URL : String;
Begin
//List of other site where search page :
TabSite := ['www.imdb.com/name/'];
//Search Result in actual page :
StartURL := '<h2><a href="http://' + SiteSearch;
CurPos := Pos(StartURL, HTML);
If Curpos > 0 then begin
EndPos := Curpos;
While (curpos > 0) AND (curpos < PosFrom('<![CDATA[', HTML, Endpos)) do begin
EndPos:= Curpos;
URLposStart := Curpos + 13;
URLPosEnd := PosFrom('" h="', HTML, URLposStart);
URL := Copy(HTML, URLPosStart, (URLposEnd-URLposStart));
curPos := PosFrom('">', HTML, curPos)+2;
endPos := PosFrom('</h2>', HTML, curPos);
Title := RemoveTags(Trim(Copy(HTML, curPos, endPos - curPos)), false);
AddSearchResult(URL, Title, '', LowerCase(URL), '');
curpos := PosFrom(StartURL, HTML, URLPosEnd);
End;
//Add Links to Page with other sites in TabSite:
For I := Low(TabSite) to High(TabSite) do
Begin
URL := 'www.bing.com/Search?q=site%3a' + TabSite[I] + PeopleName+'%s';
AddSearchResult('Search in :', TabSite[I],'',LowerCase(URL),'');
end;
End;
End;