From 47a9bbda79ace54bcc5b9dfc603a21f5fd8a6d34 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sun, 5 Jan 2014 08:59:18 +0530 Subject: [PATCH] Update New York Review of Books --- recipes/new_york_review_of_books.recipe | 31 ++++++++++--------- .../new_york_review_of_books_no_sub.recipe | 31 ++++++++++--------- 2 files changed, 32 insertions(+), 30 deletions(-) diff --git a/recipes/new_york_review_of_books.recipe b/recipes/new_york_review_of_books.recipe index b340319aae..b602df9bac 100644 --- a/recipes/new_york_review_of_books.recipe +++ b/recipes/new_york_review_of_books.recipe @@ -74,22 +74,23 @@ class NewYorkReviewOfBooks(BasicNewsRecipe): self.log('Issue date:', date) # Find TOC - toc = soup.find('div', attrs={'class':'current_issue'}).find('div', attrs={'class':'articles_list'}) + tocs = soup.find('div', attrs={'class':'current_issue'}).findAll('div', attrs={'class':'articles_list'}) articles = [] - for div in toc.findAll('div', attrs={'class':'row'}): - h2 = div.find('h2') - title = self.tag_to_string(h2).strip() - author = self.tag_to_string(div.find('div', attrs={'class':'author'})).strip() - title = title + u' (%s)'%author - url = 'http://www.nybooks.com' + h2.find('a', href=True)['href'] - desc = '' - for p in div.findAll('p', attrs={'class':lambda x: x and 'quiet' in x}): - desc += self.tag_to_string(p) - self.log('Found article:', title) - self.log('\t', url) - self.log('\t', desc) - articles.append({'title':title, 'url':url, 'date':'', - 'description':desc}) + for toc in tocs: + for div in toc.findAll('div', attrs={'class':'row'}): + h2 = div.find('h2') + title = self.tag_to_string(h2).strip() + author = self.tag_to_string(div.find('div', attrs={'class':'author'})).strip() + title = title + u' (%s)'%author + url = 'http://www.nybooks.com' + h2.find('a', href=True)['href'] + desc = '' + for p in div.findAll('p', attrs={'class':lambda x: x and 'quiet' in x}): + desc += self.tag_to_string(p) + self.log('Found article:', title) + self.log('\t', url) + self.log('\t', desc) + articles.append({'title':title, 'url':url, 'date':'', + 'description':desc}) return [('Current Issue', articles)] diff --git a/recipes/new_york_review_of_books_no_sub.recipe b/recipes/new_york_review_of_books_no_sub.recipe index 90af380fe6..3e6bd70e1e 100644 --- a/recipes/new_york_review_of_books_no_sub.recipe +++ b/recipes/new_york_review_of_books_no_sub.recipe @@ -64,22 +64,23 @@ class NewYorkReviewOfBooks(BasicNewsRecipe): self.log('Issue date:', date) # Find TOC - toc = soup.find('div', attrs={'class':'current_issue'}).find('div', attrs={'class':'articles_list'}) + tocs = soup.find('div', attrs={'class':'current_issue'}).findAll('div', attrs={'class':'articles_list'}) articles = [] - for div in toc.findAll('div', attrs={'class':'row'}): - h2 = div.find('h2') - title = self.tag_to_string(h2).strip() - author = self.tag_to_string(div.find('div', attrs={'class':'author'})).strip() - title = title + u' (%s)'%author - url = 'http://www.nybooks.com' + h2.find('a', href=True)['href'] - desc = '' - for p in div.findAll('p', attrs={'class':lambda x: x and 'quiet' in x}): - desc += self.tag_to_string(p) - self.log('Found article:', title) - self.log('\t', url) - self.log('\t', desc) - articles.append({'title':title, 'url':url, 'date':'', - 'description':desc}) + for toc in tocs: + for div in toc.findAll('div', attrs={'class':'row'}): + h2 = div.find('h2') + title = self.tag_to_string(h2).strip() + author = self.tag_to_string(div.find('div', attrs={'class':'author'})).strip() + title = title + u' (%s)'%author + url = 'http://www.nybooks.com' + h2.find('a', href=True)['href'] + desc = '' + for p in div.findAll('p', attrs={'class':lambda x: x and 'quiet' in x}): + desc += self.tag_to_string(p) + self.log('Found article:', title) + self.log('\t', url) + self.log('\t', desc) + articles.append({'title':title, 'url':url, 'date':'', + 'description':desc}) return [('Current Issue', articles)]