コード例 #1
0
ファイル: gs.py プロジェクト: jasonsims/golfshot-scraper
  def pull_golfshot_data(self, golfer_data):
    """Read golfer data from Golfshot."""
    for golfer in golfer_data:
      output.header('Getting round data for %s' % golfer)
      self.golf_shot_reader = HtmlListReader(
          '%s%s/rounds' % (BASE_URL, golfer_data[golfer]))
      round_info = {}
      for page in self.golf_shot_reader.pages:
        data = HtmlListReader(
            '%s%s/rounds?page=%s' % (BASE_URL, golfer_data[golfer], page))

        round_info = self.write_to_db(golfer, data.round_data)
コード例 #2
0
ファイル: gs.py プロジェクト: jasonsims/golfshot-scraper
  def write_to_db(self, golfer_name, round_data):
    normalized_rounds = self.normalize_round_data(round_data)
    for golf_round in normalized_rounds:
      golf_round['golfer_name'] = golfer_name
      try:
        self.rounds.insert(golf_round)
      except pymongo.errors.DuplicateKeyError:
        output.warn('Skipping...round already exists in golfshot DB')
        continue
      except:
        output.error('Unknown error occurred during DB insertion')
        output.msg(sys.exc_info()[0])
        continue

      output.info('Successfully inserted round:')
      output.dict(golf_round)