|
Simple Search in
PERL
I have had several requests for a simple
search for a web directory. Most of the good perl searches are on
websites that are offline or out of business. There are less and
less good perl resources and some of the most basic programs are
hard to find.
A basic search is very simple, but without
a good example it is difficult to get started and build a custom
application.
This search will be very effective up to
about 2000-3000 average size text files. That is usually more
than most people need, so there is nothing extra here. Just a
simple search using perl that you can easily expand on and
customize.
The search form is the default page, but
you can easily copy the html to any html page on your website.
There are no page numbers, so all the details show up on one page.
If you have hundreds of results, you may want to limit the search
to 20-50 results.
There are only 2 parameters to set.
# the directory with files you want to
search
$searchdir = "./";
The default is the same directory as the
script is in. If you have the script in a different directory
than he files you want searched then specify the path to that
directory.
# the file types you want to allow to be
searched
@filetypes = ('*.html','*.htm','*.txt');
Set an arry of the file types you want to
search. Remember they must all be text files, it can't search
images or audio files. Do not include perl files, asp or php
since the search will read the unparsed page and could give away
details about programs you do not want to share.
Try the demo. If will search all the html and text files in this
directory. There are only a few files in the directory so you
will need to search for a common word like "the",
"and" or "perl".
Installing The Program
download the search script easysearch.cgi
Rename the file to easysearch.cgi
configure the path and file types
upload th files in text format
chmod the file to 0755
Then just access the program with your
browser and search your files.
There is a load of room to take this
program to higher levels adding relevancy and sorting, breaking
down pages into multiples and expanding the directories to
multiple directories. The objective is to provide a simplified
search so you can add in the functionailty you need.
I have extensive experience with searches
having websites with millions of pages that require fast and
efficient searches. I will add some ideas and additional search
programs with more functionality as I have time. For now, the
simple search in perl is a great start for any perl hacker.
Understanding
Searches - Here is some insight
into larger searches and the limits of the simple search program.
Some ideas about how larger searches work.
|