DescriptionFarrWebMetaSearch is another generic web retrieval FARR plugin. Unlike ewemoas
Webgrab this plugin will show results in list mode. It is therefore targeted at web sites delivering list-like results.
Configuration and usage of the plugin will be as follows:
- searches are configured via a text configuration file, one for each 'search'. the file will specify search url and a regular expression to capture the result.
- search terms will be specified through the FARR input box
See implementation notes further down for further clarification.
FeaturesIt just does what it says in the description.
Planned Features- Fix icon copyright problem
- Fix launching problem
- Add proper help file
- Add a way for users to contribute / get searches
- Add logging/notification in case a configuration files is invalid
- Improve usage for news feeds
- Make original search string available as a variable
- Add many more searches
Either make plugin asynchronious or implement some way to delay searchingAdd a description for each search to xml files and FARR searches listImplement filtering of searchesImplement auto-completion of searches with Enter key (well, maybe)Add a way to specify search options (for web sites that support it)Make parsing of searches files more robust
ScreencastScreenshots | FarrWebMetaSearch | Web Site |
MSDN | NANY 2010 Final Release: FarrWebMetaSearch | NANY 2010 Final Release: FarrWebMetaSearch |
CDDB | NANY 2010 Final Release: FarrWebMetaSearch | NANY 2010 Final Release: FarrWebMetaSearch |
and a teaser
screencast.
Implementation NotesFarrWebMetaSearch reads all configuration files in its searches subdirectory when it's being loaded. When the plugin alias (currently wms) is entered, it will list all configured searches. To use a search one would then enter, e.g.:
wms msdn PathAppendto find MSDN entries for the PathAppend API function.
Search files currently look like this (this is the cddb.conf file):
description=Microsoft Developer Network
searchUrl=http://social.msdn.microsoft.com/Search/en-GB?query=
resultPattern=<a onmousedown=\".*\" href=\".*\">(.*)</a>\r\n<br/>\r\n<div class=\"ResultDescription\">(.*)</div>\r\n<div class=\"ResultUrl\">(.*)</div>
farrCaption=$1
farrGroup=$2
farrPath=$3
The regex sub-expressions can (should, actually) be used to form the results.