mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-06-23 15:30:45 -04:00
...
This commit is contained in:
parent
a37212a456
commit
f41c8c9a08
@ -4,7 +4,6 @@ __copyright__ = '2011 Aurélien Chabot <contact@aurelienchabot.fr>'
|
||||
'''
|
||||
20minutes.fr
|
||||
'''
|
||||
import re
|
||||
from calibre.web.feeds.recipes import BasicNewsRecipe
|
||||
|
||||
class Minutes(BasicNewsRecipe):
|
||||
|
@ -1,5 +1,7 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
class BasicUserRecipe1318572550(AutomaticNewsRecipe):
|
||||
|
||||
from calibre.web.feeds.news import BasicNewsRecipe
|
||||
class BasicUserRecipe1318572550(BasicNewsRecipe):
|
||||
title = u'FrAndroid'
|
||||
oldest_article = 2
|
||||
max_articles_per_feed = 100
|
||||
|
@ -1,5 +1,8 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
class BasicUserRecipe1318572445(AutomaticNewsRecipe):
|
||||
|
||||
from calibre.web.feeds.news import BasicNewsRecipe
|
||||
|
||||
class BasicUserRecipe1318572445(BasicNewsRecipe):
|
||||
title = u'Google Mobile Blog'
|
||||
oldest_article = 7
|
||||
max_articles_per_feed = 100
|
||||
|
@ -3,34 +3,31 @@ __copyright__ = '2011, Seongkyoun Yoo <seongkyoun.yoo at gmail.com>'
|
||||
'''
|
||||
Profile to download The Hankyoreh
|
||||
'''
|
||||
import re
|
||||
from calibre.web.feeds.news import BasicNewsRecipe
|
||||
from calibre.ebooks.BeautifulSoup import BeautifulSoup
|
||||
|
||||
|
||||
class Hankyoreh(BasicNewsRecipe):
|
||||
title = u'Hankyoreh'
|
||||
language = 'ko'
|
||||
description = u'The Hankyoreh News articles'
|
||||
__author__ = 'Seongkyoun Yoo'
|
||||
__author__ = 'Seongkyoun Yoo'
|
||||
oldest_article = 5
|
||||
recursions = 1
|
||||
max_articles_per_feed = 5
|
||||
no_stylesheets = True
|
||||
keep_only_tags = [
|
||||
dict(name='tr', attrs={'height':['60px']}),
|
||||
dict(id=['fontSzArea'])
|
||||
dict(name='tr', attrs={'height':['60px']}),
|
||||
dict(id=['fontSzArea'])
|
||||
]
|
||||
remove_tags = [
|
||||
dict(target='_blank'),
|
||||
dict(name='td', attrs={'style':['padding: 10px 8px 5px 8px;']}),
|
||||
dict(name='iframe', attrs={'width':['590']}),
|
||||
dict(name='td', attrs={'style':['padding: 10px 8px 5px 8px;']}),
|
||||
dict(name='iframe', attrs={'width':['590']}),
|
||||
]
|
||||
remove_tags_after = [
|
||||
dict(target='_top')
|
||||
]
|
||||
feeds = [
|
||||
('All News','http://www.hani.co.kr/rss/'),
|
||||
('All News','http://www.hani.co.kr/rss/'),
|
||||
('Politics','http://www.hani.co.kr/rss/politics/'),
|
||||
('Economy','http://www.hani.co.kr/rss/economy/'),
|
||||
('Society','http://www.hani.co.kr/rss/society/'),
|
||||
@ -47,4 +44,4 @@ class Hankyoreh(BasicNewsRecipe):
|
||||
('Multihani','http://www.hani.co.kr/rss/multihani/'),
|
||||
('Lead','http://www.hani.co.kr/rss/lead/'),
|
||||
('Newsrank','http://www.hani.co.kr/rss/newsrank/'),
|
||||
]
|
||||
]
|
||||
|
@ -3,7 +3,6 @@ __copyright__ = '2011, Seongkyoun Yoo <seongkyoun.yoo at gmail.com>'
|
||||
'''
|
||||
Profile to download The Hankyoreh
|
||||
'''
|
||||
import re
|
||||
from calibre.web.feeds.news import BasicNewsRecipe
|
||||
|
||||
class Hankyoreh21(BasicNewsRecipe):
|
||||
@ -23,4 +22,4 @@ class Hankyoreh21(BasicNewsRecipe):
|
||||
|
||||
feeds = [
|
||||
('Hani21','http://h21.hani.co.kr/rss/ '),
|
||||
]
|
||||
]
|
||||
|
@ -1,5 +1,7 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
class BasicUserRecipe1318619728(AutomaticNewsRecipe):
|
||||
from calibre.web.feeds.news import BasicNewsRecipe
|
||||
|
||||
class BasicUserRecipe1318619728(BasicNewsRecipe):
|
||||
title = u'Korben'
|
||||
oldest_article = 7
|
||||
max_articles_per_feed = 100
|
||||
|
@ -4,7 +4,6 @@ __copyright__ = '2011 Aurélien Chabot <contact@aurelienchabot.fr>'
|
||||
'''
|
||||
LePoint.fr
|
||||
'''
|
||||
import re
|
||||
from calibre.web.feeds.recipes import BasicNewsRecipe
|
||||
|
||||
class lepoint(BasicNewsRecipe):
|
||||
|
@ -4,7 +4,6 @@ __copyright__ = '2011 Aurélien Chabot <contact@aurelienchabot.fr>'
|
||||
'''
|
||||
Lexpress.fr
|
||||
'''
|
||||
import re
|
||||
from calibre.web.feeds.recipes import BasicNewsRecipe
|
||||
|
||||
class lepoint(BasicNewsRecipe):
|
||||
|
@ -1,5 +1,7 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
class BasicUserRecipe1318619832(AutomaticNewsRecipe):
|
||||
|
||||
from calibre.web.feeds.news import BasicNewsRecipe
|
||||
class BasicUserRecipe1318619832(BasicNewsRecipe):
|
||||
title = u'OmgUbuntu'
|
||||
oldest_article = 7
|
||||
max_articles_per_feed = 100
|
||||
|
@ -20,9 +20,8 @@ from calibre.devices.usbms.driver import USBMS, debug_print
|
||||
from calibre.devices.usbms.device import USBDevice
|
||||
from calibre.devices.usbms.books import CollectionsBookList
|
||||
from calibre.devices.usbms.books import BookList
|
||||
from calibre.ebooks.metadata import authors_to_sort_string
|
||||
from calibre.ebooks.metadata import authors_to_sort_string, authors_to_string
|
||||
from calibre.constants import islinux
|
||||
from calibre.ebooks.metadata import authors_to_string, authors_to_sort_string
|
||||
|
||||
DBPATH = 'Sony_Reader/database/books.db'
|
||||
THUMBPATH = 'Sony_Reader/database/cache/books/%s/thumbnail/main_thumbnail.jpg'
|
||||
@ -186,7 +185,7 @@ class PRST1(USBMS):
|
||||
if self.device_offset is None:
|
||||
query = 'SELECT file_path, modified_date FROM books'
|
||||
cursor.execute(query)
|
||||
|
||||
|
||||
time_offsets = {}
|
||||
for i, row in enumerate(cursor):
|
||||
comp_date = int(os.path.getmtime(self.normalize_path(prefix + row[0])) * 1000);
|
||||
@ -194,7 +193,7 @@ class PRST1(USBMS):
|
||||
offset = device_date - comp_date
|
||||
time_offsets.setdefault(offset, 0)
|
||||
time_offsets[offset] = time_offsets[offset] + 1
|
||||
|
||||
|
||||
try:
|
||||
device_offset = max(time_offsets,key = lambda a: time_offsets.get(a))
|
||||
debug_print("Device Offset: %d ms"%device_offset)
|
||||
@ -304,7 +303,7 @@ class PRST1(USBMS):
|
||||
if use_sony_authors:
|
||||
author = newmi.authors[0]
|
||||
else:
|
||||
author = authors_to_string(newmi.authors)
|
||||
author = authors_to_string(newmi.authors)
|
||||
except:
|
||||
author = _('Unknown')
|
||||
title = newmi.title or _('Unknown')
|
||||
@ -348,7 +347,7 @@ class PRST1(USBMS):
|
||||
|
||||
if self.is_sony_periodical(book):
|
||||
self.periodicalize_book(connection, book)
|
||||
|
||||
|
||||
for book, bookId in db_books.items():
|
||||
if bookId is not None:
|
||||
# Remove From Collections
|
||||
@ -531,7 +530,7 @@ class PRST1(USBMS):
|
||||
if book.pubdate.date() < date(2010, 10, 17):
|
||||
return False
|
||||
return True
|
||||
|
||||
|
||||
def periodicalize_book(self, connection, book):
|
||||
if not self.is_sony_periodical(book):
|
||||
return
|
||||
@ -555,19 +554,19 @@ class PRST1(USBMS):
|
||||
pubdate = int(time.mktime(book.pubdate.timetuple()) * 1000)
|
||||
except:
|
||||
pass
|
||||
|
||||
|
||||
cursor = connection.cursor()
|
||||
|
||||
|
||||
query = '''
|
||||
UPDATE books
|
||||
SET conforms_to = 'http://xmlns.sony.net/e-book/prs/periodicals/1.0/newspaper/1.0',
|
||||
periodical_name = ?,
|
||||
description = ?,
|
||||
publication_date = ?
|
||||
publication_date = ?
|
||||
WHERE _id = ?
|
||||
'''
|
||||
t = (name, None, pubdate, book.bookId,)
|
||||
cursor.execute(query, t)
|
||||
|
||||
|
||||
connection.commit()
|
||||
cursor.close()
|
||||
|
Loading…
x
Reference in New Issue
Block a user