A searchable clone of russianplanes.net, for transparency and ease of identifying planes.

  • By null
  • Last update: Jan 5, 2023
  • Comments: 2

ranet-clone

A searchable clone of russianplanes.net, for transparency and ease of identifying planes.

A torrent of the (partial) dataset is available here.

What is this?

This is a tool for

  1. Downloading the entirety of the images hosted on russianplanes.net
  2. Re-hosting them and allowing people to search them
  3. Re-creating the metadata that was once attached to these images via OCR

Why?

The website russianplanes.net was told to take down all their military aircraft listings by the Russian government. This project aims to archive all the images hosted on their CDN in order to make identification of aircraft easier.

Usage

git clone https://github.com/5HT2/ranet-clone
cd ranet-clone

# Make the dir first
RANET_DATA=/path/to/images/dir
echo "{}" > "$RANET_DATA/config.json"

#
# Run directly
go build -o ranet .
./ranet -dir $RANET_DATA -threads 4

#
# Or, run via Docker
docker build -t ranet .
docker run --name ranet --mount type=bind,source="$RANET_DATA",target=/ranet-data --network host -d -e MODE=all -e THREADS=4 ranet

TODO

  • Async downloading
  • Distributed hosting
  • Searching
  • OCR

Download

ranet-clone.zip

Comments(2)

  • 1

    Images start even lower than 100000

  • 2

    Docker build fails due to missing "leptonica/allheaders.h"

    docker build -t ranet .
    Sending build context to Docker daemon    130kB
    Step 1/8 : FROM golang:latest
     ---> 0659a535a734
    Step 2/8 : RUN mkdir /ranet-data
     ---> Using cache
     ---> 1f3eaae394ca
    Step 3/8 : ADD . /ranet-clone
     ---> Using cache
     ---> 02501d2fde5b
    Step 4/8 : WORKDIR /ranet-clone
     ---> Using cache
     ---> c36f86a10a1b
    Step 5/8 : ENV MODE all
     ---> Using cache
     ---> e7075be1c9fb
    Step 6/8 : ENV THREADS 4
     ---> Using cache
     ---> 8f78e004a167
    Step 7/8 : RUN go build -o ranet .
     ---> Running in 87a768ca36c2
    go: downloading github.com/otiai10/gosseract/v2 v2.3.1
    go: downloading github.com/disintegration/imaging v1.6.2
    go: downloading golang.org/x/image v0.0.0-20191009234506-e7c1f5e7dbb8
    # github.com/otiai10/gosseract/v2
    tessbridge.cpp:5:10: fatal error: leptonica/allheaders.h: No such file or directory
        5 | #include <leptonica/allheaders.h>
          |          ^~~~~~~~~~~~~~~~~~~~~~~~
    compilation terminated.
    The command '/bin/sh -c go build -o ranet .' returned a non-zero code: 2
    

    Prior to running, had set: RANET_DATA=/mnt/user/downloads/ranetImages echo "{}" > "$RANET_DATA/config.json"