---
name: "WWW::Search::NorthernLight"
section: "3pm"
platform: "linux"
package: "libwww-search-perl"
version: "2.07-1"
release: "Debian 2.2 (Potato)"
platforms: ["linux"]
url: "https://new.carta.tech/WWW::Search::NorthernLight"
---

# WWW::Search::NorthernLight(3pm)

class for searching NorthernLight

## NAME

WWW::Search::NorthernLight - class for searching NorthernLight

## SYNOPSIS

```
    use WWW::Search;
    my $oSearch = new WWW::Search('NorthernLight');
    my $sQuery = WWW::Search::escape_query("+sushi restaurant +Columbus Ohio");
    $oSearch->native_query($sQuery);
    while (my $oResult = $oSearch->next_result()) {
        print $oResult->url, "\n";
    }
```

## DESCRIPTION

This class is a NorthernLight specialization of WWW::Search. It handles making and interpreting NorthernLight searches *http://www.northernlight.com*.

Northern Light supports full Boolean capability (AND, OR, NOT), including parenthetical "expressions", in all searches. There is no limit to the level of nesting which you can use in a query.

This class exports no public interface; all interaction should be done through the *WWW::Search* manpage objects.

## SEE ALSO

To make new back-ends, see the *WWW::Search* manpage.

## HOW DOES IT WORK?

`native_setup_search` is called (from `WWW::Search::setup_search`) before we do anything.  It initializes our private variables (which all begin with underscore) and sets up a URL to the first results page in `{_next_url}`.

`native_retrieve_some` is called (from `WWW::Search::retrieve_some`) whenever more hits are needed.  It calls `WWW::Search::http_request` to fetch the page specified by `{_next_url}`. It then parses this page, appending any search hits it finds to  `{cache}`.  If it finds a \`\`next'' button in the text, it sets `{_next_url}` to point to the page for the next set of results, otherwise it sets it to undef to indicate we''re done.

## TESTING

This module adheres to the `WWW::Search` test suite mechanism.  See `$TEST_CASES` below.

## AUTHOR

This Backend is will now be maintained and supported by Jim Smyser. Flames to: \<jsmyser@bigfoot.com\>

`WWW::Search::NorthernLight` was originally written by Andreas Borchert based on `WWW::Search::Excite`.

## LEGALESE

THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.

## VERSION HISTORY

2\.04  Mainly Tag stripping that was getting bad and causing undesirable  formatting in the title and description return.

2\.03 Next Page url change and weeding out a new edit search url.

2\.02 Minor parsing change to get the new description line that had changed.

2\.01 typo and new test mechanism

1\.06 Slight reformat change.

1\.05 Fixed 'next' page tag recognition, this changed slightly.  Whitespace removal in description that was really BAD with some hits. Ignoring internal NorthernLight URL's.

1\.04 Slight adjustments to formatting. Returning score and date with description.

1\.03 Slight format change by NL that was making next page hits flakey corrected. Misc. code clean up.
