mirror of
https://github.com/wassname/FanFicFare.git
synced 2026-09-15 11:36:30 +08:00
Compare commits
9
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8277082614 | ||
|
|
f952fcfeb2 | ||
|
|
a343a01099 | ||
|
|
4f8575f69e | ||
|
|
eb6446efcf | ||
|
|
8299bf5eaa | ||
|
|
4beaa05cee | ||
|
|
57cd765fe0 | ||
|
|
9b42bec08a |
@@ -14,3 +14,6 @@
|
||||
*.bat
|
||||
|
||||
cleanup.sh
|
||||
FanFictionDownLoader.zip
|
||||
*.epub
|
||||
*Thumbs.db
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# ffd-retief-hrd fanfictiondownloader
|
||||
application: fanfictiondownloader
|
||||
version: 2-1-6
|
||||
version: 2-1-7
|
||||
runtime: python27
|
||||
api_version: 1
|
||||
threadsafe: true
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
[main]
|
||||
host = https://www.transifex.com
|
||||
|
||||
[calibre-plugins.fanfictiondownloader]
|
||||
file_filter = translations/<lang>.po
|
||||
source_lang = en
|
||||
type = PO
|
||||
|
||||
@@ -2067,7 +2067,10 @@ class FanFictionDownLoaderPlugin(InterfaceAction):
|
||||
# copy list top level
|
||||
for b in book_list:
|
||||
if b['series']:
|
||||
serieslist.append(b['series'][:b['series'].index(" [")])
|
||||
try:
|
||||
serieslist.append(b['series'][:b['series'].index(" [")])
|
||||
except ValueError: # substring not found
|
||||
serieslist.append(b['series'])
|
||||
#print("book series:%s"%serieslist[-1])
|
||||
|
||||
if b['publisher']:
|
||||
|
||||
@@ -4,14 +4,14 @@
|
||||
# Translators:
|
||||
# Ettore Atalan <atalanttore@googlemail.com>, 2014-2015
|
||||
# ILB, 2014-2015
|
||||
# Simon_Schuette <simonschuette@arcor.de>, 2014
|
||||
# Simon_Schuette <simonschuette@arcor.de>, 2014-2015
|
||||
# Simon S, 2015
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: calibre-plugins\n"
|
||||
"POT-Creation-Date: 2015-02-15 09:23+Central Standard Time\n"
|
||||
"PO-Revision-Date: 2015-02-21 11:02+0000\n"
|
||||
"Last-Translator: Ettore Atalan <atalanttore@googlemail.com>\n"
|
||||
"PO-Revision-Date: 2015-03-11 19:13+0000\n"
|
||||
"Last-Translator: Simon_Schuette <simonschuette@arcor.de>\n"
|
||||
"Language-Team: German (http://www.transifex.com/projects/p/calibre-plugins/language/de/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -836,7 +836,7 @@ msgstr "IMAP Benutzername"
|
||||
msgid ""
|
||||
"Name of IMAP user. Eg: yourname@gmail.com\n"
|
||||
"Note that Gmail accounts need to have IMAP enabled in Gmail Settings first."
|
||||
msgstr ""
|
||||
msgstr "Name des IMAP Nutzers. z.B.: ihrname@gmail.com\nBeachten Sie, dass Sie für Gmail Accounts erst IMAP in den Gmail Einstellungen aktivieren müssen."
|
||||
|
||||
#: config.py:1167
|
||||
msgid "IMAP User Password"
|
||||
@@ -866,7 +866,7 @@ msgstr "IMAP Ordnername"
|
||||
msgid ""
|
||||
"Name of IMAP folder to search for new emails. The folder (or label) has to "
|
||||
"already exist. Use INBOX for your default inbox."
|
||||
msgstr ""
|
||||
msgstr "Name des IMAP Ordners um nach Mails zu suchen. Der Ordner (oder Label) muss bereits existieren. Verwenden Sie INBOX für Ihren Standard Posteingang."
|
||||
|
||||
#: config.py:1194
|
||||
msgid "Mark Emails Read"
|
||||
@@ -884,7 +884,7 @@ msgid ""
|
||||
"your story update notices. FFDL and calibre cannot guarantee that malicious"
|
||||
" code cannot get your email password once you've entered it. <br>Use this "
|
||||
"feature at your own risk. </b>"
|
||||
msgstr ""
|
||||
msgstr "<b>Es ist am sichersten, wenn Sie ein separates eMail-Konto anlegen, dass Sie nur für Story-Update-Benachrichtigungen benutzen. FFDL und Calibre können nicht garantieren, dass Ihr eMail-Passwort vor einem Computer-Virus sicher ist, sobald Sie es eingegeben haben. <br>Sie nutzen diese Funktion auf eigene Gefahr!</b>"
|
||||
|
||||
#: dialogs.py:76
|
||||
msgid "Skip"
|
||||
|
||||
@@ -3,14 +3,14 @@
|
||||
#
|
||||
# Translators:
|
||||
# Franck, 2015
|
||||
# Ptitprince <leporello1791@gmail.com>, 2014
|
||||
# Ptitprince <leporello1791@gmail.com>, 2014-2015
|
||||
# sengian <sengian1@gmail.com>, 2015
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: calibre-plugins\n"
|
||||
"POT-Creation-Date: 2015-02-15 09:23+Central Standard Time\n"
|
||||
"PO-Revision-Date: 2015-02-21 17:50+0000\n"
|
||||
"Last-Translator: sengian <sengian1@gmail.com>\n"
|
||||
"PO-Revision-Date: 2015-03-04 13:41+0000\n"
|
||||
"Last-Translator: Ptitprince <leporello1791@gmail.com>\n"
|
||||
"Language-Team: French (http://www.transifex.com/projects/p/calibre-plugins/language/fr/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -817,7 +817,7 @@ msgid ""
|
||||
"These settings will allow FFDL to fetch story URLs from your email account."
|
||||
" It will only look for story URLs in unread emails in the folder specified "
|
||||
"below."
|
||||
msgstr ""
|
||||
msgstr "Ces paramètres permettent à FFDL de récupérer des URL d'histoires à partir de votre compte courriel. Il regardera uniquement après des URL d'histoires dans les courriels non lus dans le dossier spécifié ci-dessous."
|
||||
|
||||
#: config.py:1147
|
||||
msgid "IMAP Server Name"
|
||||
@@ -825,7 +825,7 @@ msgstr "Nom du serveur IMAP"
|
||||
|
||||
#: config.py:1148
|
||||
msgid "Name of IMAP server--must allow IMAP4 with SSL. Eg: imap.gmail.com"
|
||||
msgstr ""
|
||||
msgstr "Nom du serveur IMAP -- doit permettre l'IMAP4 avec SSL. Par ex. : imap.gmail.com"
|
||||
|
||||
#: config.py:1157
|
||||
msgid "IMAP User Name"
|
||||
@@ -835,7 +835,7 @@ msgstr "Nom d'utilisateur IMAP"
|
||||
msgid ""
|
||||
"Name of IMAP user. Eg: yourname@gmail.com\n"
|
||||
"Note that Gmail accounts need to have IMAP enabled in Gmail Settings first."
|
||||
msgstr ""
|
||||
msgstr "Nom de l'utilisateur IMAP. Par ex : yourname@gmail.com\nNotez que les comptes Gmail ont besoin que l'IMAP soit d'abord activé dans les Paramètres Gmail."
|
||||
|
||||
#: config.py:1167
|
||||
msgid "IMAP User Password"
|
||||
@@ -845,17 +845,17 @@ msgstr "Mot de passe de l'Utilisateur IMAP"
|
||||
msgid ""
|
||||
"IMAP password. If left empty, FFDL will ask you for your password when you "
|
||||
"use the feature."
|
||||
msgstr ""
|
||||
msgstr "Mot de passe IMAP. Si laissé vide, FFDL demandera votre mot de passe lors de l'utilisation de la fonctionnalité"
|
||||
|
||||
#: config.py:1178
|
||||
msgid "Remember Password for Session (when not saved above)"
|
||||
msgstr ""
|
||||
msgstr "Se rappeler du Mot de Passe pour la Session (quand il n'est pas sauvegardé ci-dessus)"
|
||||
|
||||
#: config.py:1179
|
||||
msgid ""
|
||||
"If checked, and no password is entered above, FFDL will remember your "
|
||||
"password until you close calibre or change Libraries."
|
||||
msgstr ""
|
||||
msgstr "Si coché et qu'aucun Mot de Passe n'est entré ci-dessus. FFDL se souviendra de votre mot de passe jusqu'à ce que vous fermiez calibre ou changiez de Bibliothèque."
|
||||
|
||||
#: config.py:1184
|
||||
msgid "IMAP Folder Name"
|
||||
@@ -865,7 +865,7 @@ msgstr "Nom de dossier IMAP"
|
||||
msgid ""
|
||||
"Name of IMAP folder to search for new emails. The folder (or label) has to "
|
||||
"already exist. Use INBOX for your default inbox."
|
||||
msgstr ""
|
||||
msgstr "Nom du dossier IMAP pour rechercher de nouveaux courriels. Le dossier (ou étiquette) doit déjà exister. Utilisez INBOX pour votre boîte de réception par défaut."
|
||||
|
||||
#: config.py:1194
|
||||
msgid "Mark Emails Read"
|
||||
@@ -875,7 +875,7 @@ msgstr "Marquer l'email comme lu"
|
||||
msgid ""
|
||||
"If checked, emails will be marked as having been read if they contain any "
|
||||
"story URLs."
|
||||
msgstr ""
|
||||
msgstr "Si coché, les courriels seront marqués comme lus s'ils contiennent des URL d'histoires"
|
||||
|
||||
#: config.py:1200
|
||||
msgid ""
|
||||
@@ -883,7 +883,7 @@ msgid ""
|
||||
"your story update notices. FFDL and calibre cannot guarantee that malicious"
|
||||
" code cannot get your email password once you've entered it. <br>Use this "
|
||||
"feature at your own risk. </b>"
|
||||
msgstr ""
|
||||
msgstr "<b>Il est plus sûr de créer une compte courriel séparé que vous utilisez uniquement pour les notifications de mise à jour d'histoires. FFDL et calibre ne peuvent garantir qu'un code malveillant s'empare de votre mot de passe de courriel une fois que vous l'avez entré. <br>Utilisez cette fonctionnalité à vos propres risques.</b>"
|
||||
|
||||
#: dialogs.py:76
|
||||
msgid "Skip"
|
||||
@@ -1232,7 +1232,7 @@ msgstr "&Mettre à jour le(s) livre(s) FanFiction existant(s)"
|
||||
|
||||
#: ffdl_plugin.py:263 ffdl_plugin.py:316
|
||||
msgid "Get Story URLs to Download from Email"
|
||||
msgstr ""
|
||||
msgstr "Obtenir des URL d'Histoires à Télécharger depuis le Courriel"
|
||||
|
||||
#: ffdl_plugin.py:267
|
||||
msgid "Get Story URLs to Download from Web Page"
|
||||
@@ -1308,15 +1308,15 @@ msgstr "Pas de livres sélectionnés pour mettre à jour les Listes de Lecture"
|
||||
|
||||
#: ffdl_plugin.py:402
|
||||
msgid "FFDL Email Settings are not configured."
|
||||
msgstr ""
|
||||
msgstr "Les paramètres de Courriel FFDL ne sont pas configurés."
|
||||
|
||||
#: ffdl_plugin.py:430
|
||||
msgid "Get Story URLs from Email"
|
||||
msgstr ""
|
||||
msgstr "Obtenir des URL d'histoires à partir du Courriel"
|
||||
|
||||
#: ffdl_plugin.py:431
|
||||
msgid "No Valid Story URLs Found in Unread Emails."
|
||||
msgstr ""
|
||||
msgstr "Aucune URL d'histoire valide trouvée dans les courriels non lus"
|
||||
|
||||
#: ffdl_plugin.py:455 ffdl_plugin.py:507
|
||||
msgid "List of Story URLs"
|
||||
|
||||
@@ -3,12 +3,13 @@
|
||||
#
|
||||
# Translators:
|
||||
# Paulo_Neto <layoutbr@lexxa.com.br>, 2014-2015
|
||||
# Wagner Marques Oliveira <wagnermarques00@hotmail.com>, 2015
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: calibre-plugins\n"
|
||||
"POT-Creation-Date: 2015-02-15 09:23+Central Standard Time\n"
|
||||
"PO-Revision-Date: 2015-02-20 09:58+0000\n"
|
||||
"Last-Translator: Kovid Goyal <kovid@kovidgoyal.net>\n"
|
||||
"PO-Revision-Date: 2015-04-04 21:21+0000\n"
|
||||
"Last-Translator: Wagner Marques Oliveira <wagnermarques00@hotmail.com>\n"
|
||||
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/calibre-plugins/language/pt_BR/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
@@ -49,7 +50,7 @@ msgstr "Personalizar Colunas"
|
||||
|
||||
#: config.py:220
|
||||
msgid "Email Settings"
|
||||
msgstr ""
|
||||
msgstr "Configurações de E-mail"
|
||||
|
||||
#: config.py:223
|
||||
msgid "Other"
|
||||
@@ -815,65 +816,65 @@ msgid ""
|
||||
"These settings will allow FFDL to fetch story URLs from your email account."
|
||||
" It will only look for story URLs in unread emails in the folder specified "
|
||||
"below."
|
||||
msgstr ""
|
||||
msgstr "Essas configurações iráo permitir o FFDL à buscar URL's de histórias da sua conta de e-mail. Isso só irá procurar URL's de histórias nos e-mails não lidos na pasta especificada abaixo."
|
||||
|
||||
#: config.py:1147
|
||||
msgid "IMAP Server Name"
|
||||
msgstr ""
|
||||
msgstr "Nome do Servidor IMAP"
|
||||
|
||||
#: config.py:1148
|
||||
msgid "Name of IMAP server--must allow IMAP4 with SSL. Eg: imap.gmail.com"
|
||||
msgstr ""
|
||||
msgstr "Nome do servidor IMAP--deve permitir IMAP4 com SSL. Ex: imap.gmail.com"
|
||||
|
||||
#: config.py:1157
|
||||
msgid "IMAP User Name"
|
||||
msgstr ""
|
||||
msgstr "Nome de usuário IMAP"
|
||||
|
||||
#: config.py:1158
|
||||
msgid ""
|
||||
"Name of IMAP user. Eg: yourname@gmail.com\n"
|
||||
"Note that Gmail accounts need to have IMAP enabled in Gmail Settings first."
|
||||
msgstr ""
|
||||
msgstr "Nome do usuário IMAP. Ex: yourname@gmail.com\nNote que as contas do Gmail precisam ter o IMAP habilitado nas configurações do Gmail primeiro."
|
||||
|
||||
#: config.py:1167
|
||||
msgid "IMAP User Password"
|
||||
msgstr ""
|
||||
msgstr "Senha do usuário IMAP"
|
||||
|
||||
#: config.py:1168
|
||||
msgid ""
|
||||
"IMAP password. If left empty, FFDL will ask you for your password when you "
|
||||
"use the feature."
|
||||
msgstr ""
|
||||
msgstr "Senha IMAP. Se deixado vazio, FFDL irá perguntar para você a senha quando você utilizar o recurso."
|
||||
|
||||
#: config.py:1178
|
||||
msgid "Remember Password for Session (when not saved above)"
|
||||
msgstr ""
|
||||
msgstr "Lembrar senha para a seção (quando não salvo acima)"
|
||||
|
||||
#: config.py:1179
|
||||
msgid ""
|
||||
"If checked, and no password is entered above, FFDL will remember your "
|
||||
"password until you close calibre or change Libraries."
|
||||
msgstr ""
|
||||
msgstr "Se marcado, e a senha não foi inserida acima, FFDL irá lembrar a senha até você fechar o calibre ou mudar as Bibliotecas."
|
||||
|
||||
#: config.py:1184
|
||||
msgid "IMAP Folder Name"
|
||||
msgstr ""
|
||||
msgstr "Nome da pasta IMAP"
|
||||
|
||||
#: config.py:1185
|
||||
msgid ""
|
||||
"Name of IMAP folder to search for new emails. The folder (or label) has to "
|
||||
"already exist. Use INBOX for your default inbox."
|
||||
msgstr ""
|
||||
msgstr "Nome da pasta IMAP para pesquisar por novos e-mails. A pasta (ou etiqueta) tem que existir anteriormente. Use INBOX para a sua caixa de entrada padrão."
|
||||
|
||||
#: config.py:1194
|
||||
msgid "Mark Emails Read"
|
||||
msgstr ""
|
||||
msgstr "Marca E-mails lidos"
|
||||
|
||||
#: config.py:1195
|
||||
msgid ""
|
||||
"If checked, emails will be marked as having been read if they contain any "
|
||||
"story URLs."
|
||||
msgstr ""
|
||||
msgstr "Se marcado, os e-mails serão marcados como lidos se eles conterem qualquer URL de histórias."
|
||||
|
||||
#: config.py:1200
|
||||
msgid ""
|
||||
@@ -881,7 +882,7 @@ msgid ""
|
||||
"your story update notices. FFDL and calibre cannot guarantee that malicious"
|
||||
" code cannot get your email password once you've entered it. <br>Use this "
|
||||
"feature at your own risk. </b>"
|
||||
msgstr ""
|
||||
msgstr "<b> É mais seguro criar um e-mail separado para você utilizar somente para suas histórias com notícias atualizadas. FFDL e calibre não garantem que códigos maliciosos não podem pegar a senha de seu e-mail uma vez que você o digitou. <br>Use este recurso pelo próprio risco. </b>"
|
||||
|
||||
#: dialogs.py:76
|
||||
msgid "Skip"
|
||||
@@ -1206,7 +1207,7 @@ msgstr "Salvar mesmo assim"
|
||||
|
||||
#: dialogs.py:1450
|
||||
msgid "Enter Email Password for %s:"
|
||||
msgstr ""
|
||||
msgstr "Insira o e-mail de senha para %s:"
|
||||
|
||||
#: ffdl_plugin.py:90
|
||||
msgid "Download FanFiction stories from various web sites"
|
||||
@@ -1230,7 +1231,7 @@ msgstr "At&ualizar Livro(s) Existente(s) de Ficção"
|
||||
|
||||
#: ffdl_plugin.py:263 ffdl_plugin.py:316
|
||||
msgid "Get Story URLs to Download from Email"
|
||||
msgstr ""
|
||||
msgstr "Pegue os URL's de histórias para download do E-mail"
|
||||
|
||||
#: ffdl_plugin.py:267
|
||||
msgid "Get Story URLs to Download from Web Page"
|
||||
@@ -1306,15 +1307,15 @@ msgstr "Nenhum livro selecionado para atualizar nas listas de leitura"
|
||||
|
||||
#: ffdl_plugin.py:402
|
||||
msgid "FFDL Email Settings are not configured."
|
||||
msgstr ""
|
||||
msgstr "Opções de E-mail do FFDL não estão configuradas."
|
||||
|
||||
#: ffdl_plugin.py:430
|
||||
msgid "Get Story URLs from Email"
|
||||
msgstr ""
|
||||
msgstr "Pegue URL's de histórias por E-mail"
|
||||
|
||||
#: ffdl_plugin.py:431
|
||||
msgid "No Valid Story URLs Found in Unread Emails."
|
||||
msgstr ""
|
||||
msgstr "Sem URL's de histórias válidos encontrados nos e-mails não lidos."
|
||||
|
||||
#: ffdl_plugin.py:455 ffdl_plugin.py:507
|
||||
msgid "List of Story URLs"
|
||||
|
||||
@@ -269,12 +269,12 @@ class FanFictionNetSiteAdapter(BaseSiteAdapter):
|
||||
if get_cover:
|
||||
# Try the larger image first.
|
||||
try:
|
||||
img = soup.find('img',{'class':'lazy cimage'})
|
||||
self.setCoverImage(url,img['data-original'])
|
||||
img = soup.select('img.lazy.cimage')
|
||||
self.setCoverImage(url,img[0]['data-original'])
|
||||
except:
|
||||
img = soup.find('img',{'class':'cimage'})
|
||||
img = soup.select('img.cimage')
|
||||
if img:
|
||||
self.setCoverImage(url,img['src'])
|
||||
self.setCoverImage(url,img[0]['src'])
|
||||
|
||||
# Find the chapter selector
|
||||
select = soup.find('select', { 'name' : 'chapter' } )
|
||||
|
||||
+27
-16
@@ -46,6 +46,33 @@
|
||||
{{yourfile}}
|
||||
<!-- </div> -->
|
||||
|
||||
<h3>Important Notice</h3>
|
||||
<p>
|
||||
Google recently decided to
|
||||
<a href="http://google-opensource.blogspot.com/2015/03/farewell-to-google-code.html">phase out code.google</a>,
|
||||
which is where FanFictionDownLoader kept it's source code.
|
||||
</p>
|
||||
<p>
|
||||
Since the FanFictionDownLoader project had to move anyway,
|
||||
this seemed like a good time to also change the name of the
|
||||
project. (There was occasional confusion with others, like
|
||||
the similiarly named fanfictiondownloader.net.)
|
||||
</p>
|
||||
<p>
|
||||
The project is now called <b>FanFicFare</b> and
|
||||
its <a href="https://github.com/JimmXinu/FanFicFare">source
|
||||
hosted on GitHub</a>.
|
||||
</p>
|
||||
<p>
|
||||
The URL of this web interface is also changed to
|
||||
<a href="http://fanficfare.appspot.com/">http://fanficfare.appspot.com/</a>.
|
||||
</p>
|
||||
<p>
|
||||
This site will be left up in case there are problems with the
|
||||
new site, but all future features and fixes will be
|
||||
on <a href="http://fanficfare.appspot.com/">FanFicFare</a>.
|
||||
</p>
|
||||
|
||||
{% if authorized %}
|
||||
<form action="/fdown" method="post">
|
||||
<div id='urlbox'>
|
||||
@@ -54,22 +81,6 @@
|
||||
much easier. </p>
|
||||
</div>
|
||||
|
||||
<h3>Changes:</h3>
|
||||
<ul>
|
||||
<li>Add devianthearts.com as a Base eFiction site.</li>
|
||||
<li>Allow https URLs for fictionmania.tv.</li>
|
||||
<li>Allow storiesofarda.com/chapterAllview.asp?SID=999 urls.</li>
|
||||
</ul>
|
||||
<p>
|
||||
Questions? Check out our
|
||||
<a href="http://code.google.com/p/fanficdownloader/wiki/FanFictionDownloaderFAQs">FAQs</a>.
|
||||
</p>
|
||||
<p>
|
||||
If you have any problems with this application, please
|
||||
report them in
|
||||
the <a href="http://groups.google.com/group/fanfic-downloader">FanFictionDownLoader Google Group</a>. The
|
||||
<a href="http://2-1-04.fanfictiondownloader.appspot.com">Previous Version</a> is also available for you to use if necessary.
|
||||
</p>
|
||||
<div id='error'>
|
||||
{{ error_message }}
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user