mirror of
https://github.com/KUlishevgeniy/c22712.git
synced 2026-09-23 23:50:21 +00:00
41 lines
1.5 KiB
Plaintext
41 lines
1.5 KiB
Plaintext
from bs4 import BeautifulSoup
|
|
from selenium import webdriver
|
|
from selenium.webdriver.chrome.service import Service
|
|
import wget
|
|
import psycopg2
|
|
|
|
connection = psycopg2.connect(host='localhost', dbname='dbdata', user='postgres', password='Q1w2e3r4')
|
|
cursor = connection.cursor()
|
|
|
|
s = Service(r"C:\\Documents\\data\\chromedriver.exe")
|
|
browser = webdriver.Chrome(service=s)
|
|
browser.get('https://www.citilink.ru/catalog/smartfony/')
|
|
html_text = browser.page_source
|
|
b_soup = BeautifulSoup(html_text, 'lxml')
|
|
|
|
insert_qwery = """create table phones\n
|
|
(id serial primary key, name varchar(100), price varchar(100),delivery varchar(100), pictures varchar(100))"""
|
|
|
|
cursor.execute(insert_qwery)
|
|
connection.commit()
|
|
|
|
phone_names = b_soup.find_all('a', class_="app-catalog-9gnskf e1259i3g0")
|
|
phone_price = b_soup.find_all('span', class_="e1j9birj0 e106ikdt0 app-catalog-j8h82j e1gjr6xo0")
|
|
phone_delivery = b_soup.find_all('div', class_="e16h9msl0 app-catalog-1fnzrtt e15ufesp0")
|
|
pictures = b_soup.find_all('div', class_="app-catalog-zugobn e1o1y6qd0")
|
|
|
|
for i in range(15):
|
|
url = 'https://www.citilink.ru/catalog/smartfony/'
|
|
filename = f"C:\\Users\\mark6\\OneDrive\\Desktop\\БД\\img\\{i}.jpg"
|
|
wget.download(url, filename)
|
|
ins_qwery = f"""INSERT INTO public.phones(name, price, delivery, pictures)\n
|
|
VALUES ('{phone_names[i].text}', '{phone_price[i].text}', '{phone_delivery[i].text}', '{filename}');"""
|
|
cursor.execute(ins_qwery)
|
|
connection.commit()
|
|
|
|
cursor.execute("Select * from phones")
|
|
print(cursor.fetchall())
|
|
|
|
cursor.close()
|
|
connection.close()
|