Wilt u elke bladwijzer waar u om geeft offline houden?  We laten u zien hoe u uw eigen open-source zelfgehost webarchief kunt maken.

Hoe maak je je eigen privé-gehoste read-it-later-app

Advertentie Het internet is een enorme schat aan kennis. Maar het is vluchtig en er zijn geen garanties dat de inhoud die je leuk vindt er in de toekomst zal zijn. Als u het zich niet kunt veroorloven om die inhoud te verliezen, kunt u een tool voor webarchivering gebruiken om een ​​kopie van de webpagina op te slaan. Ve

Advertentie

Het internet is een enorme schat aan kennis. Maar het is vluchtig en er zijn geen garanties dat de inhoud die je leuk vindt er in de toekomst zal zijn. Als u het zich niet kunt veroorloven om die inhoud te verliezen, kunt u een tool voor webarchivering gebruiken om een ​​kopie van de webpagina op te slaan.

Veel mensen gebruiken read-later-services om webartikelen op te slaan. Deze apps werken het beste met op tekst gebaseerde inhoud en kunnen ingewikkelde webpagina-ontwerpen of media niet correct verwerken. Wil je wat meer controle?

Laten we eens kijken hoe u een kloon van Instapaper of Pocket op uw computer kunt maken zonder webactiva te verliezen.

Introductie van ArchiveBox

ArchiveBox is een Open Source-oplossing waarmee u uw eigen alternatief voor een archiveringsservice zoals de Wayback-machine kunt hosten. U geeft uw privacy niet op of blijft opgesloten in een service die u niet kunt controleren.

Het neemt de lijst met URL's die u wilt archiveren en maakt een lokale, doorzoekbare HTML-kloon van de inhoud in meerdere indelingen. Het bevat lokale kopieën in HTML, een screenshot van de pagina, een PDF-bestand en WARC (Web ARChive).

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

ArchiveBox is geschreven in Python 3. Het gebruikt ook afhankelijkheden zoals Wget, Headless Chrome, Youtube-dl en andere Unix-tools om de webpagina op te slaan. U hebt geen constant actieve backend-server nodig. Voer het elke keer uit als u nieuwe koppelingen wilt importeren en de statische uitvoer wilt bijwerken.

Nadat de archivering is voltooid, kunt u de gegenereerde output / index.html in uw browser openen om het archief te bekijken.

ArchiveBox

Voordelen van ArchiveBox

  • Het archiveert de koppelingen in verschillende bestandsindelingen die als back-up werken.
  • Het probeert de originele webpagina te behouden met behulp van geavanceerde opnamemethoden.
  • Heeft de mogelijkheid om de inhoud automatisch uit te pakken en op te slaan in een enkele map.
  • Het biedt ook een eenvoudige opdrachtregelinterface voor het omgaan met meerdere koppelingen, feeds en bladwijzers. U moet het eenmalig instellen en volgens een schema uitvoeren om nieuwere koppelingen te archiveren.

Nadelen van ArchiveBox

  • ArchiveBox haalt alle middelen uit de webpagina. Het verbruikt veel schijfruimte en is CPU-intensief.
  • De app vereist drie of meer afhankelijkheden buiten Python 3.5. Er is trial-and-error nodig om deze componenten te laten samenwerken.
  • De app biedt geen volledige ondersteuning voor Windows OS. U moet Docker installeren of Windows Subsysteem voor Linux (WSL) inschakelen. Een Linux-bureaublad uitvoeren met het Windows-subsysteem voor Linux Een Linux-bureaublad uitvoeren met het Windows-subsysteem voor Linux Wilt u Linux op uw Windows-pc gebruiken? U kunt als volgt een Linux-bureaublad binnen Windows uitvoeren met behulp van het Windows-subsysteem voor Linux. Lees verder . Zelfs dan werken sommige functies mogelijk niet.

Ondersteunde besturingssystemen

ArchiveBox ondersteunt officieel de volgende besturingssystemen:

  • macOS: 10.12 Sierra met Homebrew.
  • Linux: Ubuntu, Debian (met APT). De app kan (of niet) werken in distributies zoals Fedora, CentOS, SUSE, Arch en meer.
  • BSD: FreeBSD, OpenBSD, NetBSD (met pkg).

afhankelijkheden

ArchiveBox is een flexibele tool voor webarchivering. U moet de volgende afhankelijkheden installeren en voldoen aan de minimale vereisten.

  • Python 3. Gebruik niet de standaard Python 2.0 die bij macOS wordt geleverd.
  • Wget 1.16
  • Chromium 59. Installeer Chromium niet als u Google Chrome al gebruikt.
  • YouTube-dl (optioneel): mediabronnen hebben veel opslagruimte nodig. Denk goed na voordat u uw bladwijzers archiveert.

ArchiveBox instellen

Er zijn twee manieren om ArchiveBox in te stellen - Automatisch en Handmatig .

In de automatische methode installeert een helperscript de app en hun afhankelijkheden. Maar u kunt het probleem niet oplossen als er een fout optreedt. Het is beter om de app handmatig te installeren.

Voor demonstratiedoeleinden zullen we macOS 10.14.6 gebruiken.

Afhankelijkheden installeren

De beste manier om afhankelijkheden te installeren is via een pakketbeheerder met de naam Homebrew. Lees dit artikel over het installeren van Mac-apps met Homebrew om de basisprincipes te begrijpen.

Open Terminal en typ in

 brew install python3 git wget curl youtube-dl 
 brew cask install chromium 

(Sla dit over als Google Chrome / Chromium al is geïnstalleerd in Toepassingen)

Controleer het versienummer van alle afhankelijkheden

Typ het versienummer van alle afhankelijkheden

 dependency app --version 

(Vervang de app voor afhankelijkheid door python3, wget, youtube-dl en meer)

controleer de versie van alle afhankelijkheden

Download uw bladwijzers exportbestand

Alle read-later-services en browsers kunnen uw bladwijzers exporteren als een HTML-bestand. Volg de instructies in dit artikel over het exporteren van bladwijzers vanuit uw browser Bladwijzers migreren tussen Chrome, Firefox en / of Edge Bladwijzers migreren tussen Chrome, Firefox en / of Edge Wilt u uw bladwijzers overzetten naar een nieuwe browser of een back-up maken voor bewaring? Hier is hoe dit te doen in Chrome, Firefox en Edge. Lees verder . U kunt ook een enkele link of de lijst met URL's opslaan in een tekstbestand.

Installeer ArchiveBox

Kloon de repo van de GitHub. Open Terminal en typ in

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

Vervolgens,

 cd ArchiveBox/ 

Wanneer u deze repo kloon, maakt het installatieprogramma een map ArchiveBox in uw thuismap. Deze map bevat alle hoofdapplicaties en configuratiebestanden.

installeer ArchiveBox

Voeg uw URL toe aan het archief

Als u een enkele link wilt archiveren, typt u in

 echo 'https://example.com'| ./archive 

archiveren van een enkele link

Navigeer naar uw ArchiveBox-map om de nieuw gemaakte uitvoermap te zien. Hier ziet u een index.html-bestand.

ArchiveBox-uitvoermap

Meerdere links toevoegen aan het archief

Als u meerdere links (tientallen of meer) wilt opslaan, is het beter om uw links aan een tekstbestand toe te voegen. De app parseert de URL's in het bestand en archiveert ze. Open Terminal en typ in

 ./archive [Path to Your File.txt] 

Als uw bestand zich in de map Downloads bevindt, ziet uw pad eruit

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

Wacht enkele minuten / uren om het proces te voltooien. Om toegang te krijgen tot uw archief, opent u de output / index.html in uw browser. U kunt sorteren op kolom, zoektitel met behulp van het vak in de rechterbovenhoek en het totale aantal links onderaan bekijken.

gearchiveerde links via ArchiveBox

Klik op het favicon onder de kolom Bestanden om de detailpagina te bezoeken. U vindt koppelingen naar individuele bestandsindelingen zoals te zien in de screenshot. Dezelfde link wordt ook geüpload naar archive.org.

detailpagina van elke gearchiveerde link

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

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

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

ArchiveBox configureren

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

 ~/ArchiveBox/etc/ArchiveBox.conf.default 

Opmerking: wijzig dit bestand niet, omdat ze worden gewist wanneer u de app bijwerkt. Typ in om een ​​permanent configuratiebestand te maken

 cp ~/ArchiveBox/etc/ArchiveBox.conf.default ~/.ArchiveBox.conf 

De opdracht cp maakt een duplicaat van het configuratiebestand in uw thuismap. Het bestand is standaard niet zichtbaar in uw map. Druk op Cmd + Shift + Period om zichtbaar te maken. Open het configuratiebestand in TextEdit.

kopie van het ArchiveBox-configuratiebestand

parameters

ArchiveBox biedt u veel opties. Hier zijn enkele belangrijke;

  • ONLY_NEW : Stel dit in op True om het archief voor nieuw toegevoegde links te downloaden. Komt handig als u regelmatig links naar favorieten toevoegt.
  • TIMEOUT : mogelijke waarden zijn 60 of 120 seconden. Als u frequente time-outfouten ziet, kunt u deze verhogen tot 120 seconden.
  • URL_BLACKLIST : U kunt regex-expressie gebruiken om bepaalde domeinen, extensies of URL-patronen uit het archief uit te sluiten.
  • FETCH_MEDIA : haal alle audio- en videobestanden op met youtube-dl. Stel dit alleen in op Waar als u voldoende opslagruimte heeft.
  • WGET_USER_AGENT : Gebruik dit om de user-agent tijdens het archiveren te wijzigen. Als u wordt geblokkeerd door bepaalde servers, is deze optie handig.

Voor meer informatie over de configuratiegegevens, bezoek de ArchiveBox-configuratie voor meer informatie.

Uw archief publiceren

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

U kunt het ook bedienen vanaf een thuisserver of VPS door de uitvoermap rechtstreeks naar uw webmap te uploaden.

Zorg ervoor dat u geen inhoud als CGI of PHP uitvoert, u wilt alleen statische HTML-bestanden hosten.

Het hosten van uw archief heeft zowel voor- als nadelen. Wanneer u links van willekeurige sites downloadt, moet u de gevaren begrijpen van het hosten van kwaadaardige CSS- en JS-bestanden in uw gedeelde domein. U kunt uw archieven ook op de zwarte lijst zetten in het robots.txt-bestand om privé te blijven.

Download gehele websites offline

Webarchivering heeft de afgelopen jaren de aandacht getrokken. Ze registreren de volledige inhoud van een webpagina, inclusief bron-HTML, ingesloten afbeeldingen, stylesheets en JavaScript-code. ArchiveBox past precies in de brede categorie hulpmiddelen en services voor webarchivering.

Als u gefrustreerd bent met Instapaper of Pocket, dan is ArchiveBox een uitstekend alternatief. Naast webartikelen wilt u misschien hele websites archiveren om ze offline te openen of om hun kennis te behouden. Als dit je interesseert, lees dan dit stuk over hoe je een website kunt downloaden voor offline lezen. Een hele website downloaden voor offline lezen. Een hele website downloaden voor offline lezen. Zo kun je volledige websites downloaden voor offline lezen, zodat je zelfs toegang hebt wanneer je geen wifi of 4G hebt. Lees verder .

Ontdek meer over: Instapaper, online bladwijzers, open source, pocket, het internetarchief.