Example #1
0
def get_comparison(news_org, NP_to_sentence, VP_to_sentence,
                   NPs, VPs, NP_synsets, VP_synsets,
                   article_topic, article_headline, article_news_org):
  '''Compares the articles from a single NewsOrg to an article that is
  represented by its NPs and VPs.'''
  # synsets aren't picklable so they're stored as (pos, offset) and unpacked
  NP_synsets = [wn._synset_from_pos_and_offset(pos, offset)
                for (pos, offset) in NP_synsets]
  VP_synsets = [wn._synset_from_pos_and_offset(pos, offset)
                for (pos, offset) in VP_synsets]

  comparison_articles = news_org.get_query_results(article_topic)
  if not comparison_articles:
    logger.log.warning("No comparison articles for %s" % news_org)
    return []
  comparisons = []
  for comparison_article in comparison_articles:
    if (news_org == article_news_org and
        comparison_article.headline == article_headline):
      # comparison_article is likely the same as the original article
      # do not compare
      pass
    try:
      comparison = compare_articles.compare_articles(NP_to_sentence,
                                                     VP_to_sentence, NPs, VPs,
                                                     NP_synsets, VP_synsets,
                                                     comparison_article)
      if comparison:
        comparisons.append(comparison)
    except:
      continue
  return comparisons
Example #2
0
def get_comparison(news_org, article_topic, NP_to_sentence, VP_to_sentence,
                   NPs, VPs, NP_synsets, VP_synsets, article):
    '''Compares the articles from a single NewsOrg to an article that is
  represented by its NPs and VPs.'''
    # synsets aren't picklable so they're stored as (pos, offset) and unpacked
    NP_synsets = [
        wn._synset_from_pos_and_offset(pos, offset)
        for (pos, offset) in NP_synsets
    ]
    VP_synsets = [
        wn._synset_from_pos_and_offset(pos, offset)
        for (pos, offset) in VP_synsets
    ]

    comparison_articles = news_org.get_query_results(article_topic)
    if not comparison_articles:
        return []
    comparisons = []
    for comparison_article in comparison_articles:
        try:
            comparison = compare_articles.compare_articles(
                NP_to_sentence, VP_to_sentence, NPs, VPs, NP_synsets,
                VP_synsets, comparison_article)
            if comparison:
                comparisons.append(comparison)
        except:
            continue
    return comparisons
def get_comparison(news_org, article_topic, NP_to_sentence, VP_to_sentence,
                   NPs, VPs, NP_synsets, VP_synsets, article):
  '''Compares the articles from a single NewsOrg to an article that is
  represented by its NPs and VPs.'''
  # synsets aren't picklable so they're stored as (pos, offset) and unpacked
  NP_synsets = [wn._synset_from_pos_and_offset(pos, offset)
                for (pos, offset) in NP_synsets]
  VP_synsets = [wn._synset_from_pos_and_offset(pos, offset)
                for (pos, offset) in VP_synsets]

  comparison_articles = news_org.get_query_results(article_topic)
  if not comparison_articles:
    return []
  comparisons = []
  for comparison_article in comparison_articles:
    try:
      comparison = compare_articles.compare_articles(NP_to_sentence,
                                                     VP_to_sentence, NPs, VPs,
                                                     NP_synsets, VP_synsets,
                                                     comparison_article)
      if comparison:
        comparisons.append(comparison)
    except:
      continue
  return comparisons