· 6 years ago · Jul 18, 2019, 11:28 AM
1import requests
2from bs4 import BeautifulSoup
3import sqlite3
4import time
5
6db = sqlite3.connect("items.db")
7db.execute(
8 '''create table if not exists services (device varchar(256) not null,image_name varchar(12) not null,price_original int not null,price_new int not null,service varchar(256) not null);''')
9link = requests.get('https://restore.com.ua/remont-mobilnyh-telefonov/remont-i-obsluzhyvanie-iphone')
10soup = BeautifulSoup(link.text, 'html.parser')
11
12links = soup.select("body > div.main-container.page-container > div > div.container.models-list-container > div > a")
13for link in links:
14 # time.sleep(0.5)
15 phone = link.text
16 # print(
17 # phone + " ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::")
18 r = requests.get("https://restore.com.ua" + link['href']).text
19 itemPage = BeautifulSoup(r, 'html.parser')
20 serviceList = itemPage.select(
21 # "body > div.main-container > div > div.columns > div.left.top > div > div.repair-services > div.container-md > div.repair-services-list > table > tbody > tr")
22 "div > div.columns > div.left.top > div > div.repair-services > div.container-md > div.repair-services-list > table > tbody > tr")
23 # print(serviceList.__str__())
24 for service in serviceList:
25 # print(service.text)
26 sss = BeautifulSoup(str(service), 'html.parser')
27 price = str(sss.select_one('td.pricing')).replace('<td class="pricing">', '').replace('</td>', '')
28 if (price.startswith('<td class="pricing blink-element blink-group"')):
29 continue
30 name = sss.select_one("div.form-check").text
31
32 name = str(name).strip()
33
34 # print(name + " " + price)
35
36 price_new = float(price) - (float(price) / 100 * 10)
37
38 db.execute(
39 "INSERT INTO services VALUES ('" + str(phone) + "', 'idk', " + str(price) + ", " + str(
40 int(price_new)) + ", '" + sss.select_one("td").text + "');")
41 db.commit()
42db.close()