Skip to main content

NB.no nedlaster

Project description

NBNO.py

Logo


Dette er et Python script som laster ned bøker og annet media fra Nasjonalbiblioteket (NB.no).

Kjøring i Docker - Web

Screenshot

Full-page screenshot preview

Bind en lokal mappe til /data for å få tilgang til filer som lastes ned via utforsker, filene er ellers tilgjengelige via webgrensesnittet.
Om en ønsker flere språk enn Norsk og Engelsk for OCR, må en binde en lokal mappe til /opt/tessdata og plassere *.traineddata der.

Ellers er det bare å starte containeren, og peke nettlesen til port 5000.

For å finne medie-ID, ta en kikk her

Docker Run

docker run --name nbno -p 5000:5000 -v ./nbno/data:/data -v ./nbno/tessdata:/opt/tessdata -d ghcr.io/lanjelin/nbno:latest

Docker compose

services:
  nbno:
    container_name: nbno
    ports:
      - 5000:5000
    volumes:
      - ./nbno/data:/data
      - ./nbno/tessdata:/opt/tessdata
    image: ghcr.io/lanjelin/nbno:latest

Kjøring uten Docker - CLI

For å kjøre denne koden trengs Python 3.9 eller nyere.

Linux og Mac kommer normalt med python installert. For Windows, last ned Python fra python.org, få med 'Add Python 3.xx to PATH'

For å sjekke versjon av python, kjør python --version(Windows), python3 --version(Mac/Linux), fra kommandolinjen.

Installer koden fra kilde

git clone https://github.com/Lanjelin/NBNO.py.git
cd NBNO.py
python3 -m pip install .

Installere koden fra PyPi

python -m pip install nbno

Kjøring

Etter installering kan programmet kjøres slik:

nbno --id <ID>

Avinstallering

python3 -m pip uninstall nbno

Argumenter

Eneste påkrevde argumentet er ID, som finnes ved å trykke Referere/Sitere for så å kopiere alt av tekst og tall etter no-nb_ eks. digitidsskrift_202101..etc --> nbno --id digitidsskrift_202101..etc

Følgende er støttet:

  • Bøker (digibok)
  • Aviser (digavis)
  • Bilder (digifoto)
  • Tidsskrift (digitidsskrift)
  • Kart (digikart)
  • Brev og Manuskripter (digimanus)
  • Noter (digibok)
  • Musikkmanuskripter (digimanus)
  • Plakater (digifoto)
  • Programrapport (digiprogramrapport)
Innlogget innhold Som innlogget, åpne boka der en kan lese den, åpne Utviklerverktøy og finn Nettverkfanen. Refresh siden, og nettverksfanen populeres med innhold. Finn og velg manifest?fields=etcetc i listen, og bla igjen ned og finn Request Headers.

Her kopieres innholdet fra authorization og cookie og lagres i en textfil ved scriptet.
Formaten på tekstfilen er

authorization=4JjcVi6faGF-GhD6wMoXZ80rUkg.*AAJTSQACMDIAAlNLABxxRandomRandomxxSNVpvUTlQxxRandomRandomxxDVFMAAlMxAAIwMQ..
cookie=_ga=GA1.1.1234543217.123454321; _hjSessionUser_123454321=eyJpZCI6IjUzOTZmxxRandomRandomxxy1hNDEwLTc0ZjA4NTJhxxRandomRandomxxOjE3MjYwNTEyNzcxxRandomRandomxxW5nIjp0cnVlfQ==;osvosvetc

Scriptet kjøres deretter med --cookie flagget som peker til filen, feks python3 nbno.py --id blabla --cookie nbno-cookie.txt

bruk: nbno [-h] [--id <ID>] [--cover] [--pdf] [--f2pdf] [--url] [--error] 
              [--v] [--resize <int>] [--start <int>] [--stop <int>]

påkrevd argument:
  --id <ID>    IDen på innholdet som skal lastes ned

valgfrie argumenter:
  -h, --help      show this help message and exit
  --cover         Settes for å laste covers
  --title         Settes for å hente tittel på bok automatisk
  --pdf           Settes for å lage pdf av bildene som lastes
  --f2pdf         Settes for å lage pdf av bilder i eksisterende mappe
  --url           Settes for å printe URL på hver del
  --error         Settes for å printe HTTP feilkoder
  --v             Settes for å printe mer info
  --resize <int>  Prosent av originalstørrelse på bilder
  --start <int>   Sidetall å starte på
  --stop <int>    Sidetall å stoppe på
  --cookie <string>  Sti til fil for autentisering

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nbno-1.2.3.tar.gz (11.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nbno-1.2.3-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

Details for the file nbno-1.2.3.tar.gz.

File metadata

  • Download URL: nbno-1.2.3.tar.gz
  • Upload date:
  • Size: 11.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for nbno-1.2.3.tar.gz
Algorithm Hash digest
SHA256 4709df76778a28eee253656b356aa72926045840850bfd47a6215e806ee54392
MD5 fdcfb191a0181a31ec4fe0952eea80dc
BLAKE2b-256 34064f96e57510ac42913950d6426949de13556aa9e7e6a4943e06eebaf24a3f

See more details on using hashes here.

File details

Details for the file nbno-1.2.3-py3-none-any.whl.

File metadata

  • Download URL: nbno-1.2.3-py3-none-any.whl
  • Upload date:
  • Size: 11.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for nbno-1.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 73121982c447bb4b2b80df90cd8244f95f2f27020219306ce11c6a5d0e4c37ff
MD5 4da9a77ac1114693b9959535197a599d
BLAKE2b-256 b4c20cd027fa11e4feba73dc3a5a3e7a2637c5912a93fd5f54b1a83736912e67

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page