Fakultas Ilmu Komputer UI

TPEkstra_2_1806196806.py 2.29 KB
Newer Older
1
2
3
4
import urllib.request

def get_data(situs):
    url_salah = True
5
    while url_salah == True:
6
7
8
9
10
11
        try:
            page = urllib.request.urlopen(situs)
            text = page.read().decode("utf8")
            url_salah = False
            return text
        except:
12
            return "Terjadi eror"
13
14
15

def get_data_per_wilayah(nama_wilayah):
    text = get_data("https://pudyprima.github.io/covid19-jakarta").lower()
16
    if text == "terjadi eror":
17
        return "Terjadi eror, pastikan internet anda stabil"
18
    else:
19
20
21
22
23
24
25
26
27
28
29
        if nama_wilayah[0:3].lower() == 'jak':
            if nama_wilayah[3:].lower() == 'sel':
                nama_wilayah='jakarta selatan'
            elif nama_wilayah[3:].lower() == 'bar':
                nama_wilayah='jakarta barat'
            elif nama_wilayah[3:].lower() == 'tim':
                nama_wilayah='jakarta timur'
            elif nama_wilayah[3:].lower() == 'pus':
                nama_wilayah='jakarta pusat'
            elif nama_wilayah[3:].lower() == 'ut' :
                nama_wilayah='jakarta utara'
30
31
32
33
        mulai = text.find("<td>"+nama_wilayah.lower()+"</td>")
        if mulai == -1:
            return "Maaf, "+nama_wilayah+" tidak ada dalam daftar wilayah."
        else:
34
35
            awal = text.find('<td>',mulai+1)
            akhir = text.find('</td>',awal)
36
            return int(text[awal+len('<td>'):akhir])
37

38
39
40
def get_data_jakarta():
    text = get_data("https://pudyprima.github.io/covid19-jakarta").lower()
    if text == "terjadi eror":
41
        return "Terjadi eror, pastikan internet anda stabil"
42
    else:
43
44
45
46
47
48
49
50
51
52
53
        mulai = 0
        jumlah_keseluruhan = 0
        while text.find('jakarta',mulai) !=-1 :
            mulai = text.find('<td>',mulai+1)
            nama_wilayah = text[mulai+len('<td>'):text.find('</td>',mulai)]
            if nama_wilayah.startswith('jakarta') == True:
                awal = text.find('<td>',mulai+1)
                akhir = text.find('</td>',awal)
                jumlah_keseluruhan += int(text[awal+len('<td>'):akhir])
            mulai +=1
        return jumlah_keseluruhan
54

55
def main():
56
57
58
59
60
    print(get_data_per_wilayah('Jakarta barat'))
    print(get_data_per_wilayah('Jakpus'))
    print(get_data_per_wilayah('Jaksel'))
    print(get_data_per_wilayah('Jaktim'))
    print(get_data_per_wilayah('Jakut'))
61
62
    print(get_data_jakarta())
main()