summaryrefslogtreecommitdiffstats
path: root/tools/site_compare/scrapers/__init__.py
blob: 08790aa7246d92f2438b6b85d9e175fb5466b4e2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#!/usr/bin/python2.4
#
# Copyright 2007 Google Inc. All Rights Reserved.

"""Selects the appropriate scraper for a given browser and version."""

__author__ = 'jhaas@google.com (Jonathan Haas)'

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")