#!/usr/bin/env python # Copyright (c) 2011 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. """Selects the appropriate scraper for a given browser and version.""" import types # TODO(jhaas): unify all optional scraper parameters into kwargs def GetScraper(browser): """Given a browser and an optional version, returns the scraper module. Args: browser: either a string (browser name) or a tuple (name, version) Returns: module """ if type(browser) == types.StringType: browser = (browser, None) package = __import__(browser[0], globals(), locals(), ['']) module = package.GetScraper(browser[1]) if browser[1] is not None: module.version = browser[1] return module # if invoked rather than imported, do some tests if __name__ == "__main__": print GetScraper("IE")