API-dokumentation för recept¶
API:et för skriva recept är definierade av BasicNewsRecipe
- class calibre.web.feeds.news.BasicNewsRecipe(options, log, progress_reporter)[source]¶
Grundklass som innehåller logik behövs i alla recept. Genom att åsidosätta gradvis mer av funktionaliteten i den här klassen kan du göra allt mer anpassade/kraftfulla recept. För en handledningsintroduktion till att skapa recept, se Lägga till din favorit nyhetswebbplats.
- abort_article(msg=None)[source]¶
Anropa denna metod inuti någon av förbehandlingsmetoderna för att avbryta hämtningen av den aktuella artikeln. Användbart att hoppa över artiklar som innehåller olämpligt innehåll, såsom hela videoklippsartiklar.
- abort_recipe_processing(msg)[source]¶
Orsakar att recepthämtningssystemet avbryter hämtningen av detta recept, visning av ett enkelt återkopplingsmeddelande till användaren.
- add_toc_thumbnail(article, src)[source]¶
Anropa detta från populate_article_metadata med attributet src för en <img>-tagg från artikeln som är lämplig att använda som miniatyrbild som representerar artikeln i innehållsförteckningen. Huruvida miniatyrbilden faktiskt används är enhetsberoende (används för närvarande endast av Kindle-läsenheter). Observera att den refererade bilden måste vara en som hämtats ner, annars kommer den att ignoreras.
- classmethod adeify_images(soup)[source]¶
Om ditt recept vid konvertering till EPUB har problem med bilderna när de visas i Adobe Digital Editions, anropa den här metoden inifrån
postprocess_html()
.
- canonicalize_internal_url(url, is_link=True)[source]¶
Returnera en uppsättning kanoniska representationer av
url
. Standardimplementeringen använder bara serverns värdnamn och sökväg för URL:en, utan att ignorerar eventuella frågeparametrar, fragment etc. De kanoniska representationerna måste vara unika för alla URL:er för den här nyhetskällan. Om de inte är det kan interna länkar lösas felaktigt.- Parametrar:
is_link – Är True om URL:en kommer från en intern länk i en HTML-fil. False om URL:en är URL:en som används för att hämta en artikel.
- cleanup()[source]¶
Anropas efter alla artiklar har hämtats. Använd den för att göra godtycklig sanering som att logga ut från prenumerationsplatser etc.
- clone_browser(br)[source]¶
Klona webbläsaren br. Klonade webbläsare används för flertrådade hämtningar, eftersom mechanize (mekanisera) inte är trådsäkert. Standard kloningsrutinerna ska fånga de flesta webbläsaranpassningar, men om du gör något exotiskt i ditt recept, ska du åsidosätta den här metoden i ditt recept och klona manuellt.
Klonade webbläsarinstanser använder samma, trådsäkra CookieJar som standard, såvida du inte har anpassad hantering av kakor.
- download()[source]¶
Hämta och förbearbeta alla artiklar från flödena i detta recept. Denna metod bör endast anropas en gång för en viss receptinstans. Att anropa den mer än en gång kommer att leda till odefinierat beteende. :return: Sökväg till index.html
- extract_readable_article(html, url)[source]¶
Extraherar huvudartikelinnehållet från ’html’, rensas upp och returneras som en (artikel_html, extraherad_titel) tupel. Baserat på den ursprungliga läsbarhetsalgoritmen från Arc90.
- get_article_url(article)[source]¶
Åsidosätt i en underklass för att anpassa extraheringen av URL som hänvisar till innehållet för varje artikel. Returnera artikelwebbadressen. Den anropas med article, ett objekt som representerar en analyserad artikel från ett flöde. Se feedparser. Normalt söker den efter den ursprungliga länken (till flöde syndikerade via en tjänst som FeedBurner eller Pheedo) och om den hittas, returnerar detta eller annars returneras article.link.
- get_browser(*args, **kwargs)[source]¶
Returnera en webbläsarinstans som används för att hämta dokument från webben. Som standard returnerar den en mechanize webbläsarinstans som stöder kakor, ignorerar robots.txt, hanterar uppdateringar och har en slumpmässig gemensam användaragent.
För att anpassa webbläsaren åsidosätt denna metod i din underklass som:
def get_browser(self, *a, **kw): br = super().get_browser(*a, **kw) # Add some headers br.addheaders += [ ('My-Header', 'one'), ('My-Header2', 'two'), ] # Set some cookies br.set_cookie('name', 'value') br.set_cookie('name2', 'value2', domain='.mydomain.com') # Make a POST request with some data br.open('https://someurl.com', {'username': 'def', 'password': 'pwd'}).read() # Do a login via a simple web form (only supported with mechanize browsers) if self.username is not None and self.password is not None: br.open('https://www.nytimes.com/auth/login') br.select_form(name='login') br['USERID'] = self.username br['PASSWORD'] = self.password br.submit() return br
- get_cover_url()[source]¶
Returnera en URL till omslagsbild för den här utgåvan eller None. Som standard returneras värdet av elementet self.cover_url som normalt är None. Om du vill att ditt recept för att hämtar ett omslag för e-boken åsidosätter den här metoden i din underklass, eller ställa medlemsvariabeln self.cover_url innan denna metod anropas.
- get_extra_css()[source]¶
Som standard returneras self.extra_css. Åsidosätt om du vill programmässigt skapa extra_css.
- get_feeds()[source]¶
Returnera en lista med RSS-flöden att hämta för den här profilen. Varje element i listan måste vara ett 2-elements tupel av formen (titel, url). Om titeln är None eller en tom sträng, används titeln från flödet. Denna metod är användbar om du receptet behöver göra en del bearbetning för att räkna ut lista med inlägg för att hämtar. Om så är fallet, åsidosätt i din underklass.
- get_masthead_url()[source]¶
Returnera en URL till redaktionsloggan för denna utgåva eller None. Som standard returneras värdet på medlemmen self.masthead_url som normalt är None. Om du vill att ditt recept ska hämta en redationslogga för e-boken åsidosätter du denna metod i din underklass, eller ställer in medlemsvariabeln self.masthead_url innan denna metod anropas. Redaktionsloggor används i Kindle MOBI-filer.
- get_obfuscated_article(url)[source]¶
Om du ställer in articles_are_obfuscated anropas denna metod med varje artikel-URL. Den ska returnera sökvägen till en fil i filsystemet som innehåller artikeln HTML. Den filen bearbetas av den rekursiva HTML-hämtningsmotorn, så den kan innehålla länkar till sidor/bilder på webben. Alternativt kan du returnera en ordbok av formatet: {’data’: <HTML data>, ’url’: <the resolved URL of the article>}. Detta undviker att behöva skapa tillfälliga filer. url-nyckeln i ordboken är användbar om artikelns effektiva URL skiljer sig från URL-adressen som skickas till den här metoden, till exempel på grund av omdirigeringar. Den kan utelämnas om URL:en är oförändrad.
Denna metod är oftast användbart för webbplatser som försöker göra det svårt att komma åt artikelns innehåll automatiskt.
- get_url_specific_delay(url)[source]¶
Returnera fördröjningen i sekunder innan du hämtar den här webbadressen. Om du programmatiskt vill bestämma fördröjningen för den angivna URL:en, åsidosätt den här metoden i din underklass och returnerar self.delay som standard för URL:er som du inte vill påverka.
- Returnerar:
Ett flyttalnummer, fördröjningen i sekunder.
- classmethod image_url_processor(baseurl, url)[source]¶
Utför en del bearbetning av bildwebbadresser (kanske ta bort storleksbegränsningar för dynamiskt genererade bilder etc.) och returnera den bearbetade webbadressen. Returnera None eller en tom sträng för att hoppa över att hämta bilden.
- index_to_soup(url_or_raw, raw=False, as_tree=False, save_raw=None)[source]¶
Bekväm metod som använder en URL som indexsida och returnerar en BeautifulSoup av den.
url_or_raw: Antingen en webbadress eller den hämtade indexsidan som en sträng
- is_link_wanted(url, tag)[source]¶
Returnera True om länken ska följas eller False annars. Som standard höjer NotImplementedError som orsakar hämtningen att ignorera det.
- Parametrar:
url – URL:en som ska följas
tag – Taggen för vilken URL:en erhölls
- parse_feeds()[source]¶
Skapa en lista med artiklar från listan med flöden som returneras av
BasicNewsRecipe.get_feeds()
. returnerar en lista medFeed
objekt.
- parse_index()[source]¶
Denna metod bör implementeras på recept för att analysera en webbplats istället för flöden skapar en lista med artiklar. Typiska användningsområden är för nyhetskällor som har en ”tryckt upplaga”-webbplats som listar alla artiklar i den aktuella tryckupplagan. Om denna funktion implementeras kommer den att användas istället för
BasicNewsRecipe.parse_feeds()
.Det måste returnera en lista. Varje element i listan måste vara ett 2-inslag tupel av formen
("flödestitel", lista med artiklar)
.Varje lista med artiklar måste innehålla ordböcker av formen:
{ 'title' : article title, 'url' : URL of print version, 'date' : The publication date of the article as a string, 'description' : A summary of the article 'content' : The full article (can be an empty string). Obsolete do not use, instead save the content to a temporary file and pass a file:///path/to/temp/file.html as the URL. }
Till exempel, se receptet för hämtning av The Atlantic. Dessutom kan du lägga till ’författare’ till författaren till artikeln.
Om du vill avbryta behandlingen av någon anledning och låta calibre visa användaren ett enkelt budskap istället för ett fel, anropa
abort_recipe_processing()
.
- populate_article_metadata(article, soup, first)[source]¶
Anropas när varje HTML-sida som tillhör artikel hämtas. Avsedd att användas för att få artikelns metadata som författare/sammanfattning/etc. från den analyserad HTML:en (soap).
- Parametrar:
article – Ett objekt av klass
calibre.web.feeds.Article
. Om du ändrar sammanfattningen, kom ihåg att också ändra text_summarysoup – Analyserad HTML tillhör den här artikeln
first – True iff analyserade HTML är den första sidan av artikeln.
- postprocess_book(oeb, opts, log)[source]¶
Kör någon behövd efterbehandling på den analyserade hämtade e-boken.
- Parametrar:
oeb – Ett OEBBook-objekt
opts – Konverteringsalternativ
- postprocess_html(soup, first_fetch)[source]¶
Denna metod anropas med källan för varje hämtad HTML-fil, efter att den har analyserats för länkar och bilder. Den kan användas för att göra godtyckligt kraftfull efterbearbetning på HTML. Den bör returnera soup efter bearbetatning.
- Parametrar:
soup – En BeautifulSoup instans innehållande hämtad HTML.
first_fetch – True om detta är första sidan av en artikel.
- preprocess_html(soup)[source]¶
Denna metod anropas med källan till varje hämtad HTML-fil, innan den analyseras för länkar och bilder. Den anropas efter rensningen som specificerats av remove_tags etc. Det kan användas för att göra godtyckligt kraftfull förbearbetning av HTML. Det ska returnera soup efter bearbetning.
soup: En BeautifulSoup instans innehållande hämtad HTML.
- preprocess_image(img_data, image_url)[source]¶
Utför viss bearbetning av hämtade bilddata. Denna anropas på rådata innan någon storleksändring görs. Måste returnera bearbetade rådata. Returnera None för att hoppa över bilden.
- preprocess_raw_html(raw_html, url)[source]¶
Denna metod anropas med källa av varje hämtad HTML-fil, innan den analyseras i ett objektträd. raw_html är en unicode sträng som representerar råa HTML-hämtning från webben. url är URL från vilken HTML:en var hämtad.
Observera att den här metoden agerar före preprocess_regexps.
Denna metod måste returnera den bearbetade raw_html som ett unicode-objekt.
- classmethod print_version(url)[source]¶
Ta en url som hänvisar till en webbplats med artikelinnehåll och returnerar URL som hänvisar till en utskrivbar version av artikeln. Som standard gör ingenting. TIll exempel:
def print_version(self, url): return url + '?&pagewanted=print'
- publication_date()[source]¶
Använd den här metoden för att ställa in datumet då detta nummer publicerades. Standard till hämtningsögonblicket. Måste returnera ett
datetime.datetime
-objekt.
- skip_ad_pages(soup)[source]¶
Denna metod anropas med källan till varje hämtad HTML-fil, innan någon av rensningsattribut som remove_tags, keep_only_tags tillämpas. Observera att preprocess_regexps kommer redan ha använts. Det är tänkt att låta receptet att hoppa över annonssidor. Om soup är en annonssida, returnera HTML av den verkliga sidan. Annars returneras None.
soup: En BeautifulSoup instans innehållande hämtad HTML.
- sort_index_by(index, weights)[source]¶
Bekväm metod för att sortera titlar i index enligt weights. index` sorteras efter plats. Returnerar index.
index: En lista med titlar.
weights: En ordbok som översätter vikt mot titel. Om något titelindex inte har vikt, antas de ha vikten 0.
- classmethod tag_to_string(tag, use_alt=True, normalize_whitespace=True)[source]¶
Bekväm metod som använder en BeautifulSoup
Tagga
och extrahera texten från den rekursivt, inklusive godtyckliga CDATA-avsnitt och alt-tagg-attribut. Returnera en eventuellt tom Unicode-sträng.use_alt: Om True försök använd alt attribut för taggar som inte har något textinnehåll
tagg: BeautifulSoup
Tag
- articles_are_obfuscated = False¶
Ställ in till True och implementerar
get_obfuscated_article()
för att hantera webbplatser som försöker göra det svårt att skrapa fram innehåll.
- auto_cleanup = False¶
Extrahera automatiskt all text från hämtade artikelsidor. Använder algoritmerna från läsbarhetsprojektet. Att ställa in detta till True betyder att du inte behöver oroa dig för att städa upp den hämtade HTML-koden manuellt (även om manuell städning alltid kommer att vara överlägsen).
- auto_cleanup_keep = None¶
Ange element som den automatiska rensningsalgoritmen aldrig ska ta bort. Syntaxen är ett XPath-uttryck. Till exempel:
auto_cleanup_keep = '//div[@id="article-image"]' will keep all divs with id="article-image" auto_cleanup_keep = '//*[@class="important"]' will keep all elements with class="important" auto_cleanup_keep = '//div[@id="article-image"]|//span[@class="important"]' will keep all divs with id="article-image" and spans with class="important"
- browser_type = 'mechanize'¶
Den simulerade webbläsarmotorn att använda vid hämtning från servrar. Standard är att använda Python-mekaniserade webbläsarmotor, som stöder inloggning. Men om du inte behöver logga in, överväg att ändra detta till antingen ”webengine” som använder en faktisk Chromium-webbläsare för att göra nätverksförfrågningarna eller ”qt” som använder Qt Networking-backend. Både ’webengine’ och ’qt’ stöder HTTP/2, som mekanisera inte och är därmed svårare att fingeravtrycka för botskyddstjänster.
Om True centreras navigationslisten annars är den vänsterjusterad
- compress_news_images = False¶
Ställ in detta på False för att ignorera alla skalnings- och komprimeringsparametrar och skicka bilder genom oförändrade. Om True och de andra komprimeringsparametrarna lämnas på sina standardvärden, skalas bilderna för att passa i skärmmåtten som ställts in av utmatningsprofilen och komprimeras till högst storlek (b * h)/16 där b x h är de skalade bildmåtten.
- compress_news_images_auto_size = 16¶
Faktorn som används vid automatisk komprimering av JPEG-bilder. Om den är inställd på Ingen är automatisk komprimering inaktiverad. Annars kommer bilderna att reduceras i storlek till (b * h) / compress_news_images_auto_size byte om möjligt genom att minska kvalitetsnivån, där b x h är bilddimensionerna i pixlar. Minsta JPEG-kvalitet är 5/100 så det är möjligt att denna begränsning inte uppfylls. Denna parameter kan åsidosättas av parametern compress_news_images_max_size som ger en fast maximal storlek för bilder. Observera att om du aktiverar skala_nyheter_images_till_utrustning kommer bilden först att skalas och sedan reduceras dess kvalitet tills dess storlek är mindre än (b*h)/faktor där b och h nu är de skalade bilddimensionerna. Med andra ord, denna komprimering sker efter skalning.
- compress_news_images_max_size = None¶
Ställ in JPEG-kvalitet så att bilderna inte överstiger den angivna storleken (i KByte). Om den är inställd, åsidosättar den här parametern automatisk komprimering via compress_news_images_auto_size. Minsta JPEG-kvalitet kommer att vara 5/100 så det är möjligt att den här begränsningen inte kommer att uppfyllas.
- conversion_options = {}¶
Receptspecifika alternativ för att anpassa konvertering av hämtat innehåll in i en e-bok. Dessa kommer åsidosätta alla användare eller insticksmodul specifika värden, så använd bara om det är absolut nödvändigt. Till exempel:
conversion_options = { 'base_font_size' : 16, 'linearize_tables' : True, }
- cover_margins = (0, 0, '#ffffff')¶
Som standard används omslagsbilden som returneras av get_cover_url() som omslaget för tidskriften. Att åsidosätta detta i ditt recept instruerar calibre att göra det hämtade omslaget till en ram vars bredd och höjd uttrycks i procent av det hämtade omslaget. cover_margins = (10, 15, ’#ffffff’) fyller omslaget med en vit marginal 10 pixlar till vänster och höger, 15 pixlar på toppen och botten. Färgnamn definieras på här. Observera att vit av någon anledning inte alltid fungerar i Windows. Använd istället #ffffff
- delay = 0¶
Standardfördröjningen mellan på varandra följande hämtningar i sekunder. Argumentet kan vara ett flyttal för att indikera en mer exakt tid. Se
get_url_specific_delay()
för att implementera förseningar per URL.
- description = ''¶
Ett par rader som beskriver innehållet detta recept hämtar. Detta kommer främst att användas i ett användargränssnitt som presenterar en lista med recept.
- encoding = None¶
Ange en åsidosättskodning för webbplatser som har en felaktig teckenuppsättningsspecifikation. Det vanligaste är att ange
latin1
och användacp1252
. Om None, försök att identifiera kodningen. Om det är en anropbar, anropas den anropsbara med två argument: Receptobjektet och källan som ska avkodas. Det måste returnera den avkodade källan.
- extra_css = None¶
Ange någon extra CSS som bör läggas till hämtade HTML-filer. Det kommer att införas i <style>-taggar, precis före den avslutande </head>-taggen därigenom åsidosätts alla CSS utom det som deklarerats med hjälp av formatattribut på individuella HTML-taggar. Observera att om du vill att programmässigt skapa extra_css åsidosätt
get_extra_css()
metoden istället. Till exempel:extra_css = '.heading { font: serif x-large }'
- feeds = None¶
Förteckning över flöden att hämtar. Kan vara antingen
[url1, url2, ...]
eller[('title1', url1), ('title2', url2),...]
- filter_regexps = []¶
Lista med reguljära uttryck som avgör vilka länkar att ignorera. Om den är tom ignoreras den. Används endast om is_link_wanted inte implementeras. Till exempel:
filter_regexps = [r'ads\.doubleclick\.net']
kommer ta bort alla URL-adresser som har ads.doubleclick.net in sig.
Endast en av
BasicNewsRecipe.match_regexps
ellerBasicNewsRecipe.filter_regexps
bör definieras.
- handle_gzip = True¶
Ställ in på False om du inte vill använda gzippade överföringar med den mekaniserade webbläsaren. Observera att vissa gamla servrar flagnar ut med gzip.
- ignore_duplicate_articles = None¶
Ignorera dubbletter av artiklar som finns i mer än ett avsnitt. En dubblettartikel är en artikel som har samma titel och/eller URL. Att ignorera artiklar med samma titel, ställ in detta till:
ignore_duplicate_articles = {'title'}
För att använda URL:er istället, ställ in den till:
ignore_duplicate_articles = {'url'}
För att matcha titel eller URL, ställ in den till:
ignore_duplicate_articles = {'title', 'url'}
- keep_only_tags = []¶
Håll endast specificerade taggar och deras underkategorier. För formatet för att ange en tagg se
BasicNewsRecipe.remove_tags
. Om denna lista inte är tom, då blir <body> tagg tom och återfylld med taggar som matchar objekt i denna lista. Till exempel:keep_only_tags = [dict(id=['content', 'heading'])]
kommer bara ha taggar som har ett id attribut av ”content” eller ”heading”.
- language = 'und'¶
Språket som nyheterna är på. Måste vara en ISO-639-kod, antingen två eller tre tecken lång
- masthead_url = None¶
Som standard använder calibre en standardbild för redaktionsloggan (endast Kindle). Åsidosätt detta i ditt recept för att tillhandahålla en URL som du kan använda som redaktionslogga.
- match_regexps = []¶
Lista med reguljära uttryck som avgör vilka länkar att följa. Om den är tom, ignoreras den. Endast användas om is_link_wanted inte implementeras. Till exempel:
match_regexps = [r'page=[0-9]+']
kommer matcha alla URL:er som har page=some number i sig.
Endast en av
BasicNewsRecipe.match_regexps
ellerBasicNewsRecipe.filter_regexps
bör definieras.
- max_articles_per_feed = 100¶
Högsta antal artiklar att hämta från varje flöde. Den är primärt användbar för flöde som inte har artikeldatum. För de flesta flödes, bör du använda
BasicNewsRecipe.oldest_article
- needs_subscription = False¶
Om True kommer gränssnittet att be användaren om ett användarnamn och lösenord för att använda vid hämtning. Om inställningen är ”frivilligt” att använda ett användarnamn och lösenord blir tillval
- no_stylesheets = False¶
Bekväm flagga för att inaktivera laddning av formatmallar för webbplatser som har alltför komplexa formatmallar som är olämpliga för konvertering till e-bokformat. Om True hämtas och bearbetas inte formatmallar
- oldest_article = 7.0¶
Äldsta artikel att hämtar från denna nyhetskälla. I dagar.
- preprocess_regexps = []¶
Lista med regexp substitutionsregler att köras vid hämtning HTML. Varje element i listan bör vara en tupel. Första elementet av tupel bör vara ett kompilerat regujärt uttryck och andra en anropsbar som tar ett matchande objekt och returnerar en sträng för att ersätta träffen. Till exempel:
preprocess_regexps = [ (re.compile(r'<!--Article ends here-->.*</body>', re.DOTALL|re.IGNORECASE), lambda match: '</body>'), ]
kommer ta bort allt från <!–Article ends here–> till </body>.
- publication_type = 'unknown'¶
Publikationstyp inställd till tidning, tidskrift eller blogg. Om inställt till None, kommer ingen publikationstypsmetadata skrivas till OPF-filen.
- recipe_disabled = None¶
Ändra till en icke-tom sträng för att inaktivera detta recept. Strängen kommer att användas som det inaktiverade meddelandet
- recipe_specific_options = None¶
Ange alternativ som är specifika för detta recept. Dessa kommer att vara tillgängliga för användaren att anpassa på fliken Avancerat i dialogrutan Hämta nyheter eller på kommandoraden för ebook-convert. Alternativen är specificerade som ett namn på ett ordboksmappningsalternativ till metadata om alternativet. Till exempel:
recipe_specific_options = { 'edition_date': { 'short': 'The issue date to download', 'long': 'Specify a date in the format YYYY-mm-dd to download the issue corresponding to that date', 'default': 'current', } }
När receptet körs kommer self.recipe_specific_options att vara ett dict-mappningsalternativnamn till det alternativvärde som anges av användaren. När alternativet är ospecificerat av användaren, kommer det att ha värdet som anges av ’default’. Om ingen standard är angiven, kommer alternativet inte att finnas i dict alls, när ospecificerat av användaren.
- recursions = 0¶
Antal nivåer av länkar att följa på en artikelwebbplats
- remove_attributes = []¶
Lista med attribut att ta bort från alla taggar. Till exempel:
remove_attributes = ['style', 'font']
- remove_empty_feeds = False¶
Om True tas tomma flöden bort från utmatningen. Det här alternativet har ingen effekt om parse_index åsidosätts i underklassen. Den är avsedd endast för recept som returnerar en lista med flöden som använder feeds eller
get_feeds()
. Den används också om du använder alternativet ignore_duplicate_articles.
- remove_javascript = True¶
Bekväm flagga för att ta bort alla JavaScript-taggar från den hämtad HTML-koden
- remove_tags = []¶
Lista med taggar som ska avlägsnas. Angivna taggar tas bort från hämtad HTML. En tagg anges som en ordbok på formen:
{ name : 'tag name', #e.g. 'div' attrs : a dictionary, #e.g. {'class': 'advertisment'} }
Alla tangenter är valbara. För en fullständig förklaring av sökkriterierna, se Beautiful Soup Ett vanligt exempel:
remove_tags = [dict(name='div', class_='advert')]
Detta tar bort alla <div class=”advert”> taggar och deras underkategorier från hämtade HTML.
- remove_tags_after = None¶
Ta bort alla taggar som förekommer efter angiven tagg. För formatet att ange en tagg se
BasicNewsRecipe.remove_tags
. Till exempel:remove_tags_after = [dict(id='content')]
kommer ta bort alla taggar efter första elementet med id=”content”.
- remove_tags_before = None¶
Ta bort alla taggar som förekommer före angiven tagg. För formatet att ange en tagg se
BasicNewsRecipe.remove_tags
. Till exempel:remove_tags_before = dict(id='content')
kommer ta bort alla taggar före första elementet med id=”content”.
- requires_version = (0, 6, 0)¶
Lägsta version av calibre som behövs för detta recept
- resolve_internal_links = False¶
Om den är inställd till True ändras länkar i hämtade artiklar som hänvisar till andra hämtade artiklar ändras till att hänvisa till den hämtade kopian av artikeln istället än dess ursprungliga URL. Om du ställer in detta till True, kan du också behöva implementera
canonicalize_internal_url()
för att fungera med webbadresschemat för din specifika webbplats.
- reverse_article_order = False¶
Vänd om ordningen på artiklar i varje flöde
- scale_news_images = None¶
Största dimensioner (w, h) att skala bilder till. Om scale_news_images_to_device är True så är detta inställt på enhetens skärmmått för utskriftsprofil om det inte finns någon profil som, i vilket fall det är kvar på oavsett värde den har tilldelats (standard None).
- scale_news_images_to_device = True¶
Skala om bilder för att passa enhetens skärmmått inställda av utmatningsprofilen. Ignoreras om ingen utmatningsprofil är angiven.
- simultaneous_downloads = 5¶
Antal samtidiga hämtningar. Ställ in till 1 om servern är kräsen. Sänks automatiskt till 1 om attr:BasicNewsRecipe.delay > 0
- summary_length = 500¶
Högsta antal tecken i den korta beskrivningen
- template_css = '\n .article_date {\n color: gray; font-family: monospace;\n }\n\n .article_description {\n text-indent: 0pt;\n }\n\n a.article {\n font-weight: bold; text-align:left;\n }\n\n a.feed {\n font-weight: bold;\n }\n\n .calibre_navbar {\n font-family:monospace;\n }\n '¶
CSS som används för att utforma mallar, dvs. navigeringsfältet och innehållsförteckningen. Istället för att åsidosätta denna variabel bör du använda extra_css i ditt recept för att anpassa utseende och känsla.
- timefmt = ' [%a, %d %b %Y]'¶
Formatsträngen för datumet som visas på första sidan. Som standard: Day_Name, Day_Number Month_Name Year
- timeout = 120.0¶
Tidsbegränsning för att hämta filer från servern i sekunder
- title = 'Okänd nyhetskälla'¶
Titel att använda för e-boken
- use_embedded_content = None¶
Normalt försöker vi uppskatta om ett flöde har hela artiklar inbäddade i den baserat på längden av inbäddat innehåll. Om None, sedan standard används gissning. Om True då antar vi alltid flöden har inbäddat innehåll och om` False` kan vi alltid utgå från flödet inte har inbäddat innehåll.