diff --git a/rak/1.py b/rak/1.py new file mode 100644 index 0000000..6b4f6f4 --- /dev/null +++ b/rak/1.py @@ -0,0 +1,25 @@ +import psycopg2 +import csv +conn = psycopg2.connect( + host="172.17.0.2", + port="5432", + dbname="hw1", + user="postgres", + password="123456" +) + +cur = conn.cursor() + +with open('output2.csv','r') as f: + csv_reader = csv.reader(f) + next(csv_reader) + for row in csv_reader: + if row[1] =="": + row[1] = "N/A" + + cur.execute("INSERT INTO bpg_data1 (column1, column2, column3) VALUES (%s, %s, %s)",(row[0], row[1],row[2])) + +conn.commit() + +cur.close() +conn.close() diff --git a/rak/2.py b/rak/2.py new file mode 100644 index 0000000..06b1147 --- /dev/null +++ b/rak/2.py @@ -0,0 +1,12 @@ +import requests +import csv +from bs4 import BeautifulSoup +res=requests.get("https://blog.python.org/") +soup = BeautifulSoup(res.content, "html.parser") +titles = soup.find_all("h1") +with open('output2.csv','w',newline='') as f: + writer = csv.writer(f) + writer.writerow(['column 1','column 2','column 3']) + for row in titles: + writer.writerow(row) +f.close() diff --git a/rak/Dockerfile b/rak/Dockerfile new file mode 100644 index 0000000..5d757f1 --- /dev/null +++ b/rak/Dockerfile @@ -0,0 +1,9 @@ +FROM python:3.10.2-alpine3.15 +# Create directories +RUN mkdir -p /root/workspace/src +COPY ./hw.py /root/workspace/src +# Switch to project directory +WORKDIR /root/workspace/src +# Install required packages +RUN pip install --upgrade pip +RUN pip install requests bs4 html5lib diff --git a/rak/docker-compose.yml b/rak/docker-compose.yml new file mode 100644 index 0000000..15f0a8d --- /dev/null +++ b/rak/docker-compose.yml @@ -0,0 +1,9 @@ +psql-db: + image: 'postgres:14' + container_name: psql-db1 + environment: + - PGPASSWORD=123456 + - POSTGRES_USER=postgres + - POSTGRES_PASSWORD=123456 + ports: + - '5434:5432' diff --git a/rak/output2.csv b/rak/output2.csv new file mode 100644 index 0000000..3c8eae8 --- /dev/null +++ b/rak/output2.csv @@ -0,0 +1,19 @@ +column 1,column 2,column 3 +"Major new features of the 3.12 series, compared to 3.11",Enjoy the new releases,And now for something completely different +More resources,"Major new features of the 3.12 series, compared to 3.11",
+
,More resources,Enjoy the new releases +And now for something completely different,
,"Major new features of the 3.12 series, compared to 3.11" +Enjoy the new releases,And now for something completely different,"More resources" +"Major new features of the 3.12 series, compared to 3.11",
, +More resources,, +
,, +
,, +Enjoy the new releases,, +"Major new features of the 3.12 series, compared to 3.11",, +More resources,, +
,, +And now for something completely different,, +
,, +Enjoy the new releases,, +"Major new features of the 3.12 series, compared to 3.11",, +"More resources",,