-
Notifications
You must be signed in to change notification settings - Fork 0
/
scan
81 lines (58 loc) · 1.34 KB
/
scan
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#!/bin/bash
baseurl="https://pse.kominfo.go.id/static/json-static"
basefolder="data"
mkdir -p data
generate () {
limit=$(($1-1))
for i in `seq 0 $limit`
do
echo "curl -Ss \"$baseurl/$2/$i.json\" | jq '.data[].attributes' | jq -sc '.' >> $basefolder/tmp_$3" | sh
done
cat $basefolder/tmp_$3 | jq -sc 'flatten' > $basefolder/$3
rm $basefolder/tmp_$3
}
avail(){
cheker=$(curl -s -I $baseurl/$1/0.json | grep -i "^Content-Type:" | awk '{print $2}')
# Check if the folder is available
if [[ $cheker == *"application/json"* ]]; then
totalpage=$(curl -Ss "$baseurl/$1/0.json" | jq '.meta.page.lastPage')
generate $totalpage $1 $2
fi
}
lokal_terdaftar(){
case="LOKAL_TERDAFTAR"
filename="lokal_terdaftar.json"
avail $case $filename
}
lokal_dihentikan(){
case="LOKAL_DIHENTIKAN_SEMENTARA"
filename="lokal_dihentikan.json"
avail $case $filename
}
lokal_dicabut(){
case="LOKAL_DICABUT"
filename="lokal_dicabut.json"
avail $case $filename
}
#ASING
asing_terdaftar(){
case="ASING_TERDAFTAR"
filename="asing_terdaftar.json"
avail $case $filename
}
asing_dihentikan(){
case="ASING_DIHENTIKAN_SEMENTARA"
filename="asing_dihentikan.json"
avail $case $filename
}
asing_dicabut(){
case="ASING_DICABUT"
filename="asing_dicabut.json"
avail $case $filename
}
lokal_terdaftar
lokal_dihentikan
lokal_dicabut
asing_terdaftar
asing_dihentikan
asing_dicabut