Een zelf-gehoste Lees Later-app maken om verschillende websites op te slaan

Het internet is een enorme schat aan kennis. Maar het is kortstondig en er zijn geen garanties Dat de inhoud die je wilt er in de toekomst zal zijn. Als u het verlies van deze inhoud niet kunt verdragen, kunt u de webarchiveringstool gebruiken om een ​​kopie van de webpagina op te slaan.

Veel mensen gebruiken leesdiensten Later Webartikelen opslaan. Deze apps werken prima Beter met documentinhoud naar tekst en kan niet goed genoeg omgaan met het ontwerpen van complexe webpagina's of media. Dus ben je op zoek naar wat meer controle?

Een zelf-gehoste app voor later lezen maken om verschillende websites op te slaan - Instructies

Laten we eens kijken hoe u een kloon van Instapaper of Pocket op uw pc kunt maken zonder webpagina-items te verliezen.

Introductie van ArchiveBox

Archiefdoos Het is een open source-oplossing die u kan helpen bij het hosten van uw eigen alternatief voor een archiveringsservice zoals de Wayback Machine. Je geeft je privacy niet op of blijft in een dienst waar je geen controle over hebt.

De opdracht werkt door de lijst met URL's die u wilt archiveren en creëert een lokale, doorbladerbare HTML-kloon van inhoud in meerdere indelingen. Bevat lokale kopieën in HTML, paginascreenshot, PDF en WARC (Web ARCHive).

Deze kopieën blijven bij je, zelfs als de originele webpagina in de toekomst verdwijnt.

ArchiveBox is geprogrammeerd met behulp van Python 3. Het gebruikt ook afhankelijkheden zoals wget و Chroom zonder kop En YouTube-dl-tools Unix Overige om de webpagina op te slaan. Je hebt geen server nodig die constant op de achtergrond draait. Voer het gewoon uit elke keer dat u nieuwe links wilt importeren en de statische uitvoer wilt bijwerken.

Zodra het archiveren is voltooid, kunt u de uitvoer openen /index.html aangemaakt in uw browser om het archief te bekijken.

Een zelf-gehoste app voor later lezen maken om verschillende websites op te slaan - Instructies

ArchiveBox-voordelen

  • Het slaat links op in verschillende bestandsindelingen die als back-ups dienen.
  • Het probeert de originele webpagina te behouden met behulp van complexe vastlegmethoden.
  • Het heeft de mogelijkheid om inhoud automatisch te extraheren en op te slaan in een enkele map.
  • Het biedt ook een eenvoudige opdrachtregelinterface om meerdere links, feeds en bladwijzers te verwerken. U moet het eenmaal instellen en volgens een schema uitvoeren om de meest recente links te archiveren.

Nadelen ArchiveBox

  • ArchiveBox haalt alle middelen uit de webpagina. Het verbruikt veel schijfruimte en maakt intensief gebruik van de CPU.
  • De toepassing vereist drie of meer afhankelijkheden buiten Python 3.5. Het vergt vallen en opstaan ​​om deze componenten samen te laten werken.
  • De applicatie ondersteunt het Windows-besturingssysteem niet volledig. Zou moeten Je moet Docker installeren of Windows-subsysteem voor Linux (WSL) inschakelen. Zelfs dan kunnen sommige functies wel of niet werken.

Ondersteunde besturingssystemen

ArchiveBox ondersteunt officieel de volgende besturingssystemen:

  • macOS: 10.12 Sierra met Homebrew.
  • Linux: Ubuntu, Debian (met APT). De applicatie werkt mogelijk (of niet) in Distributies Zoals Fedora, CentOS, SUSE, Arch en meer.
  • BSD: FreeBSD, OpenBSD, NetBSD (met pkg).

afhankelijkheden

ArchiveBox is een flexibele tool voor webarchivering. De volgende afhankelijkheden moeten zijn geïnstalleerd en voldoen aan de minimale vereisten.

  • Python 3. Gebruik niet de standaard Python 2.0 die bij macOS wordt geleverd.
  • wget 1.16
  • Chroom 59. Als u gebruikt Google Chrome Al niet installeren Chromium.
  • Youtube-dl (Optioneel): Mediabronnen hebben veel opslagruimte nodig. U moet dit tot in detail raden voordat u uw favoriete sites archiveert.

ArchiveBox-configuratie

Er zijn twee manieren om ArchiveBox in te stellen - automatisch en handmatig.

in automatische modus , zal het plug-inscript de toepassing en zijn afhankelijkheden installeren. Maar u kunt het probleem niet oplossen als er iets misgaat. Het is beter om de applicatie handmatig te installeren.

Voor demonstratiedoeleinden gebruiken we macOS 10.14.6.

afhankelijkheden installeren

De beste manier om afhankelijkheden te installeren is via een pakketbeheerder genaamd Homebrew. Bekijk dit artikel om de basisprincipes te begrijpen Over het installeren van apps met Homebrew.

Open Terminal en typ in

brew install python3 git wget curl youtube-dl
brew cask install chromium
(Omzeil dit als je Google Chrome/Chromium al in de apps hebt geïnstalleerd)

Controleer het versienummer van alle afhankelijkheden

Om het versienummer van alle afhankelijkheden te controleren, typt u

dependency app --version

(vervang de afhankelijkheidsapp door python3, wget, youtube-dl en meer)

Een zelf-gehoste app voor later lezen maken om verschillende websites op te slaan - Instructies

Download uw exportbestand voor bladwijzers

Alle Lees Later-services en browsers kunnen bladwijzers exporteren als een HTML-bestand. Volg de instructies in dit artikel over het exporteren van bladwijzers vanuit uw browser. U kunt ook een enkele link of lijst met URL's opslaan in een tekstbestand.

Installeer ArchiveBox

Kopieer repository van GitHub. Je moet Terminal openen en typen

git clone https://github.com/pirate/ArchiveBox

dan,

cd ArchiveBox/

Wanneer deze repo is gekloond, maakt het installatieprogramma een ArchiveBox-map in uw thuismap. Deze map bevat alle belangrijke applicatiebestanden en configuraties.

Een zelf-gehoste app voor later lezen maken om verschillende websites op te slaan - Instructies

Voeg uw URL toe aan het archief

Als u een enkele link wilt archiveren, typt u

echo 'https://example.com'| ./archive
Een zelf-gehoste app voor later lezen maken om verschillende websites op te slaan - Instructies

Ga naar de map ArchiveBox om de nieuw gemaakte uitvoermap te zien. Hier ziet u het bestand index.html.

Een zelf-gehoste app voor later lezen maken om verschillende websites op te slaan - Instructies

Voeg meerdere links toe aan archief

Wanneer je meerdere links (tientallen of meer) wilt bewaren, is het beter dat je de links aan een tekstbestand toevoegt. De applicatie analyseert en archiveert de URL's in het bestand. Open Terminal en typ in

./archive [Path to Your File.txt]

Als het bestand zich in de map Downloads bevindt, ziet uw pad er als volgt uit:

./archive /Users/(Home directory name)/Downloads/links.txt

Wacht een paar minuten/uren totdat het proces is voltooid. Om toegang te krijgen tot uw archief, opent u de uitvoer /index.html in uw browser. U kunt op kolom sorteren, de titel zoeken met behulp van het vak rechtsboven en het totale aantal links onderaan bekijken.

Een zelf-gehoste app voor later lezen maken om verschillende websites op te slaan - Instructies

Klik op het favicon onder de kolom Bestanden om naar de detailpagina te gaan. U vindt links naar het enkele bestandsformaat zoals weergegeven in de schermafbeelding. Dezelfde link wordt ook geüpload naar archief.org.

Een zelf-gehoste app voor later lezen maken om verschillende websites op te slaan - Instructies

Exporteer op dezelfde manier Instapaper- of Pocket-links als een HTML-bestand. Typ dan in

./archive ~/Downloads/instapaper-export.html

U kunt de lijst met links ook importeren vanuit de feed-URL. Maar onthoud dat u veel fouten of het verlopen van een sessie kunt tegenkomen. Als er duizenden URL's zijn, is het beter om ze op te splitsen in kleinere bestanden om het slagingspercentage te verhogen.

ArchiveBox-configuratie

De standaardinstellingen werken in de meeste gevallen, maar er zijn enkele belangrijke parameters die u kunt aanpassen om meer functies te krijgen. Het configuratiebestand bevindt zich in

~/ArchiveBox/etc/ArchiveBox.conf.default
ملاحظة: Wijzig dit bestand niet, want het wordt gewist wanneer u de toepassing bijwerkt. Om een ​​permanent configuratiebestand te maken, typt u
cp ~/ArchiveBox/etc/ArchiveBox.conf.default ~/.ArchiveBox.conf

De opdracht wordt gegenereerd cp Dubbele kopie van het configuratiebestand in uw thuismap. Standaard is het bestand niet zichtbaar in uw directory. Om een ​​verborgen bestand zichtbaar te maken, drukt u op Cmd + Shift + punt. Open het configuratiebestand in Teksteditor.

Een zelf-gehoste app voor later lezen maken om verschillende websites op te slaan - Instructies

de docenten

ArchiveBox geeft je veel opties. Hier zijn enkele belangrijke.

  • ALLEEN_NIEUW: Stel dit in op True om het archief met nieuw toegevoegde links te downloaden. Handig als u regelmatig links bekijkt.
  • TIME-OUT: Mogelijke waarden zijn 60 of 120 seconden. Als u regelmatig time-outfouten ziet, verhoogt u deze tot 120 seconden.
  • URL_BLACKLIST: U kunt de regex-expressie gebruiken om specifieke domeinen, extensies of URL-patronen uit te sluiten van het archief.
  • FETCH_MEDIA: Haal alle audio- en videobestanden op met youtube-dl. Stel dit alleen in op True als u voldoende opslagruimte heeft.
  • WGET_USER_AGENT: Gebruik het om de user-agent te wijzigen tijdens het archiveren. Als u door bepaalde servers wordt geblokkeerd, is deze optie handig.

Ga voor meer informatie over configuratiedetails naar ArchiveBox-configuratie Voor meer informatie.

Publiceer uw archief

Het door ArchiveBox geproduceerde archief is compatibel met elke provider die statische HTML kan hosten. Bijvoorbeeld GitHub-pagina's.

Je kunt het ook maken op huisbediende of VPS Door de uitvoermap rechtstreeks naar uw webdirectory te uploaden.

Zorg ervoor dat er geen inhoud zoals CGI of PHP actief is en dat u alleen statische HTML-bestanden wilt hosten.

Het hosten van uw archief heeft zowel voor- als nadelen. Wanneer u links van willekeurige sites downloadt, moet u de risico's begrijpen van het hosten van kwaadaardige CSS- en JS-bestanden in uw gedeelde domein. Misschien wilt u de geschiedenislijst ook in een bestand plaatsen robots.txt Op de zwarte lijst om vertrouwelijk te blijven.

Download alle websites voor offline beoordeling

Webarchivering staat de laatste jaren in de belangstelling. Ze registreren de volledige inhoud van een webpagina, inclusief de bron-HTML, inline-afbeeldingen, stijlen en JavaScript-code. ArchiveBox past in de brede categorie van webarchiveringstools en -services.

Als je gefrustreerd bent met Instapaper of Pocket ArchiveBox zou een uitstekend alternatief zijn. Afgezien van webartikelen, wilt u misschien hele websites archiveren voor offline toegang of om hun informatie te bewaren. Als dit je interesseert, lees dan dit artikel over hoe Download een website voor offline lezen.

DzTech

Ik ben een staatsingenieur met uitgebreide ervaring op het gebied van programmeren, website maken, SEO en technisch schrijven. Ik ben gepassioneerd door technologie en wijd mij aan het verstrekken van kwaliteitsinformatie aan het publiek. Ik kan een waardevollere bron worden voor gebruikers die op zoek zijn naar nauwkeurige en betrouwbare informatie over productrecensies en gespecialiseerde toepassingen op verschillende gebieden. Mijn niet-aflatende toewijding aan kwaliteit en nauwkeurigheid zorgt ervoor dat de verstrekte informatie betrouwbaar en nuttig is voor het publiek. Het voortdurende streven naar kennis drijft mij om op de hoogte te blijven van de nieuwste technologische ontwikkelingen en ervoor te zorgen dat gedeelde ideeën op een duidelijke en toegankelijke manier worden overgebracht.
Ga naar de bovenste knop