Download Paper Sekaligus Batch Dengan Memberi Judul Menggunakan Sopaper

Kadang kita perlu mendownload banyak paper banyak dalam waktu yang singkat. Saya telah mencoba beberapa kali dan ternyata melalahkan juga. Kemudian saya iseng mencari tools untuk mendownlaod paper secara batch dengan kita hanya memberi judul saja. Tertujulah saya pada satu program cli python https://github.com/ppwwyyxx/SoPaper dengan 29 fork , 118 star, 179 commit (walaupun commit terakhir 2017 πŸ˜› ) yang membuat saya yakin.

Cara install nya cukup mudah hanya menggunakan pip. Cara menggunakannya juga tinggal panggil command dengan paramter judul nya

#install
pip install --user sopaper
#download paper
sopaper "Distinctive image features from scale-invariant keypoints"

Optimasi Untuk Download Sekaligus

Karena program nya belum menyediakan batch download, dan karena saya malas, saya iseng buat bash script untuk batch download dengan cara menulis daftar judul di file. lalu memanggil script dnegan menerima output dari file (io redirection / < )

Bash script ini hanya bisa dijalankan di *nix (mac, linux, dsb) untuk yang menggunakan windows seperti saya bisa menggunakan WSL . Atau bisa juga cygwin, git bash.

Berikut bash script nya

#!/bin/bash

fail=()
success=()
while read judul; do
        printf "downloading $judul";
        sopaper "$judul" &>> log;
        if [ $? -eq 0  ]
        then
                success+=("$judul");
                printf " : success\n";
        else
                fail+=("$judul");
                printf " : fail\n";
        fi
done

printf "\ndone\n";

printf "success : ${#success[@]}\n";
for judul2 in "${success[@]}"; do
        printf "$judul2\n";
done

printf "\n";

printf "fail : ${#fail[@]}\n";
for judul2 in "${fail[@]}"; do
        printf "$judul2\n";
done

Seharusnya saya menggunakan python lalu membuat pull request atau fork, namun belum sempet πŸ˜€

Untuk kecepatan saya mencoba mendownload 2 paper dan menghabiskan waktu selama 1 menit . @TODO : membuat perbandingakn mendownlaod paper banyak, bikin berapa persen berhasil berapa persen gagal. dan hitung performa nya juga

Menurut saya ini sudah cukup karena saya lebih suka mouseless 😎 Kalau ada yang mau dibuat program gui/web nya mungkin bisa komentar dibawah sehingga bisa saya pertimbangkan πŸ˜€ Atau mungkin ada tools lain yang lebih gampang.

Update

Ternyata programnya tidak mengembalikan return code error (selain 0) jika paper gagal di download / tidak ditemukan. Sehingga kode bash script diatas tidak berjalan semestinya, paper yang gagal di download dianggap berhasil. Mungkin saya akan mencoba fork dan memperbaikinya

guest
0 Comments
Inline Feedbacks
View all comments