· 5 years ago · Jul 09, 2020, 06:20 PM
1import sqlite3
2import requests
3from bs4 import BeautifulSoup
4
5
6
7r = requests.get('https://www.myauto.ge/ka/s/00/0/3/00/00/00/00/bmw?stype=0&marka=3¤cy_id=3&det_search=0&ord=7&category_id=m0&keyword=')
8c = r.content
9soup = BeautifulSoup(c, "html.parser")
10rows = soup.find_all("div",{"class": "current-item-inner"})
11carinfolist = []
12for item in rows:
13 name = item.find("div", {"class":"car-name-left"}).text.strip().split(" ")
14 fullname = name[1] + " " +name[2]
15 price = []
16 try:
17 prices = item.find_all("span", {"class": "car-price"})
18 lari = prices[0].text
19 dolari = prices[1].text.strip()
20
21 price.append([lari,dolari])
22
23 except:
24 price.append("ფასი შეთანხმებით")
25 carinfolist.append([fullname, price])
26
27
28def create_db_tble() -> None:
29
30
31 conn = sqlite3.connect('carinfoDB.db')
32 cursor = conn.cursor()
33
34 _SQL = 'CREATE TABLE IF NOT EXISTS carinfo(ID INTEGER PRIMARY KEY AUTOINCREMENT, Carname TEXT, lari TEXT, dolari TEXT)'
35 cursor.execute(_SQL)
36 conn.commit()
37 cursor.close()
38 conn.close()
39
40def insert_carinfo(carname: str, lari: str, dolari: str) -> None:
41 conn = sqlite3.connect('carinfoDB.db')
42 cursor = conn.cursor()
43
44 _SQL = 'INSERT INTO carinfo(Carname,lari,dolari) VALUES(?,?,?)'
45
46 cursor.execute(_SQL, (carname,lari,dolari))
47
48 conn.commit()
49 cursor.close()
50 conn.close()
51
52
53def delete_carinfo(ID: int) ->None:
54 conn = sqlite3.connect('carinfoDB.db')
55 cursor = conn.cursor()
56
57 _SQL = 'DELETE FROM carinfo WHERE ID = ?'
58
59 cursor.execute(_SQL,(ID, ))
60
61 conn.commit()
62 cursor.close()
63 conn.close()
64
65def view_carinfo():
66 conn = sqlite3.connect('carinfoDB.db')
67 cursor = conn.cursor()
68
69 _SQL = 'SELECT * FROM carinfo'
70
71 cursor.execute(_SQL)
72
73 data = cursor.fetchall()
74
75
76 for index, item in enumerate(data):
77 print(str(index + 1) + '. ' + str(item))
78
79
80 cursor.close()
81 conn.close()
82
83
84create_db_tble()
85
86
87def options_menu() -> str:
88 print('\nStudents database program')
89
90 print('1.Insert carinfo')
91
92 print('2.delete carinfo')
93
94 print('3.view carinfo')
95
96 print('enter q to exit\n')
97
98 opt = input("please choose option: ")
99 return opt
100
101option = options_menu()
102
103while option != 'q':
104 if option == '1':
105 for a in carinfolist:
106 if(len(a[1][0]) == 2):
107 insert_carinfo(a[0], a[1][0][0],a[1][0][1])
108 else:
109 insert_carinfo(a[0], a[1][0],a[1][0])
110 option = options_menu()
111
112 elif option == '2':
113 view_carinfo()
114
115 ID = int(input("\nplease choose student ID: "))
116 option = options_menu()
117
118 delete_carinfo(ID)
119 elif option == '3':
120 view_carinfo()
121 option = options_menu()
122 else:
123 print('please choose correct option!')
124 option = options_menu()