update settings.py
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -7,3 +7,4 @@ db.sqlite3
|
|||||||
venv
|
venv
|
||||||
.vscode
|
.vscode
|
||||||
/media
|
/media
|
||||||
|
settings.py
|
||||||
|
|||||||
0
kivi_cars/Generator/__init__.py
Normal file
0
kivi_cars/Generator/__init__.py
Normal file
3
kivi_cars/Generator/admin.py
Normal file
3
kivi_cars/Generator/admin.py
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
from django.contrib import admin
|
||||||
|
|
||||||
|
# Register your models here.
|
||||||
6
kivi_cars/Generator/apps.py
Normal file
6
kivi_cars/Generator/apps.py
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
from django.apps import AppConfig
|
||||||
|
|
||||||
|
|
||||||
|
class GeneratorConfig(AppConfig):
|
||||||
|
default_auto_field = 'django.db.models.BigAutoField'
|
||||||
|
name = 'Generator'
|
||||||
0
kivi_cars/Generator/migrations/__init__.py
Normal file
0
kivi_cars/Generator/migrations/__init__.py
Normal file
3
kivi_cars/Generator/models.py
Normal file
3
kivi_cars/Generator/models.py
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
from django.db import models
|
||||||
|
|
||||||
|
# Create your models here.
|
||||||
3
kivi_cars/Generator/tests.py
Normal file
3
kivi_cars/Generator/tests.py
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
from django.test import TestCase
|
||||||
|
|
||||||
|
# Create your tests here.
|
||||||
6
kivi_cars/Generator/urls.py
Normal file
6
kivi_cars/Generator/urls.py
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
from django.urls import path
|
||||||
|
from Generator import views
|
||||||
|
|
||||||
|
urlpatterns = [
|
||||||
|
path('', views.HexaGenerator)
|
||||||
|
]
|
||||||
12
kivi_cars/Generator/views.py
Normal file
12
kivi_cars/Generator/views.py
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
from rest_framework.decorators import api_view
|
||||||
|
from rest_framework.response import Response
|
||||||
|
import secrets
|
||||||
|
|
||||||
|
# Create your views here.
|
||||||
|
|
||||||
|
@api_view(['GET'])
|
||||||
|
def HexaGenerator(request):
|
||||||
|
if request.method == 'GET':
|
||||||
|
hexa_id = secrets.token_hex(16)
|
||||||
|
return Response({"message": "Search id:", "data": hexa_id})
|
||||||
|
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
# ----------Imports------------
|
# ----------Imports------------
|
||||||
|
from ast import Num
|
||||||
from datetime import date
|
from datetime import date
|
||||||
from traceback import print_tb
|
from traceback import print_tb
|
||||||
from unittest import result
|
from unittest import result
|
||||||
@@ -156,7 +157,7 @@ for i in range(1,pages_number_to_crawl):
|
|||||||
for i in range(0, 1): #len(olx_id)
|
for i in range(0, 1): #len(olx_id)
|
||||||
# Artikal olx_link
|
# Artikal olx_link
|
||||||
# artikal_link = 'https://www.olx.ba/artikal/' + '35731053'
|
# artikal_link = 'https://www.olx.ba/artikal/' + '35731053'
|
||||||
artikal_link = 'https://www.olx.ba/artikal/' + '36976713'
|
artikal_link = 'https://www.olx.ba/artikal/' + '46962030'
|
||||||
|
|
||||||
|
|
||||||
podaci["Olx_id"] = artikal_link
|
podaci["Olx_id"] = artikal_link
|
||||||
@@ -265,14 +266,15 @@ for i in range(1,pages_number_to_crawl):
|
|||||||
|
|
||||||
|
|
||||||
# Vrijeme i datum
|
# Vrijeme i datum
|
||||||
if (result_item.find('time', {'class' : 'entry-date'})):
|
if (result_item.find('div', {'class' : 'ob'})):
|
||||||
date_time_div = result_item.find('time', {'class' : 'entry-date'}).get_text().split()
|
date_time_div = result_item.find('div', {'class' : 'ob'}).attrs
|
||||||
datum = date_time_div[0]
|
datum_vrijeme = date_time_div["data-content"].split()
|
||||||
vrijeme = date_time_div[2]
|
datum = datum_vrijeme[0]
|
||||||
|
vrijeme = datum_vrijeme[2]
|
||||||
podaci["Datum"] = datum
|
podaci["Datum"] = datum
|
||||||
podaci["Vrijeme"] = vrijeme
|
podaci["Vrijeme"] = vrijeme
|
||||||
|
|
||||||
# print(podaci["Datum"], podaci["Vrijeme"])
|
#print(datum,vrijeme)
|
||||||
|
|
||||||
|
|
||||||
# Vrsta oglasa
|
# Vrsta oglasa
|
||||||
|
|||||||
@@ -258,10 +258,11 @@ for i in range(1,pages_number_to_crawl):
|
|||||||
|
|
||||||
|
|
||||||
# Vrijeme i datum
|
# Vrijeme i datum
|
||||||
if (result_item.find('time', {'class' : 'entry-date'})):
|
if (result_item.find('div', {'class' : 'ob'})):
|
||||||
date_time_div = result_item.find('time', {'class' : 'entry-date'}).get_text().split()
|
date_time_div = result_item.find('div', {'class' : 'ob'}).attrs
|
||||||
datum = date_time_div[0]
|
datum_vrijeme = date_time_div["data-content"].split()
|
||||||
vrijeme = date_time_div[2]
|
datum = datum_vrijeme[0]
|
||||||
|
vrijeme = datum_vrijeme[2]
|
||||||
podaci["Datum"] = datum
|
podaci["Datum"] = datum
|
||||||
podaci["Vrijeme"] = vrijeme
|
podaci["Vrijeme"] = vrijeme
|
||||||
# print(podaci["Datum"], podaci["Vrijeme"])
|
# print(podaci["Datum"], podaci["Vrijeme"])
|
||||||
@@ -281,7 +282,7 @@ for i in range(1,pages_number_to_crawl):
|
|||||||
olx_db = pd.DataFrame(podaci_db) # treba biti niz
|
olx_db = pd.DataFrame(podaci_db) # treba biti niz
|
||||||
# print(olx_db)
|
# print(olx_db)
|
||||||
|
|
||||||
olx_db.to_excel('proba2.xlsx',index=False)
|
olx_db.to_excel('proba231112.xlsx',index=False)
|
||||||
|
|
||||||
print("Zavrseno!!")
|
print("Zavrseno!!")
|
||||||
|
|
||||||
|
|||||||
@@ -277,6 +277,8 @@ for i in range(1,pages_number_to_crawl):
|
|||||||
podaci["Vrijeme"] = vrijeme
|
podaci["Vrijeme"] = vrijeme
|
||||||
# print(podaci["Datum"], podaci["Vrijeme"])
|
# print(podaci["Datum"], podaci["Vrijeme"])
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Insert datas to database
|
# Insert datas to database
|
||||||
dictionary_copy = podaci.copy()
|
dictionary_copy = podaci.copy()
|
||||||
podaci_db.append(dictionary_copy)
|
podaci_db.append(dictionary_copy)
|
||||||
|
|||||||
0
kivi_cars/cars/__init__.py
Normal file
0
kivi_cars/cars/__init__.py
Normal file
3
kivi_cars/cars/admin.py
Normal file
3
kivi_cars/cars/admin.py
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
from django.contrib import admin
|
||||||
|
|
||||||
|
# Register your models here.
|
||||||
6
kivi_cars/cars/apps.py
Normal file
6
kivi_cars/cars/apps.py
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
from django.apps import AppConfig
|
||||||
|
|
||||||
|
|
||||||
|
class CarsConfig(AppConfig):
|
||||||
|
default_auto_field = 'django.db.models.BigAutoField'
|
||||||
|
name = 'cars'
|
||||||
99
kivi_cars/cars/migrations/0001_initial.py
Normal file
99
kivi_cars/cars/migrations/0001_initial.py
Normal file
@@ -0,0 +1,99 @@
|
|||||||
|
# Generated by Django 4.0.4 on 2022-05-16 04:55
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
initial = True
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='Car',
|
||||||
|
fields=[
|
||||||
|
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
|
('Olx_id', models.CharField(max_length=10)),
|
||||||
|
('Kategorija', models.CharField(max_length=30)),
|
||||||
|
('Cijena', models.CharField(max_length=30)),
|
||||||
|
('Stanje', models.CharField(max_length=30)),
|
||||||
|
('Lokacija_kanton', models.CharField(max_length=50)),
|
||||||
|
('Lokacija_grad', models.CharField(max_length=50)),
|
||||||
|
('Proizvođač', models.CharField(max_length=30)),
|
||||||
|
('Model', models.CharField(max_length=30)),
|
||||||
|
('Godište', models.CharField(max_length=30)),
|
||||||
|
('Kilometraža', models.CharField(max_length=30)),
|
||||||
|
('Kilovata_KW', models.CharField(max_length=30)),
|
||||||
|
('Kubikaža', models.CharField(max_length=30)),
|
||||||
|
('Gorivo', models.CharField(max_length=30)),
|
||||||
|
('Broj_vrata', models.CharField(max_length=30)),
|
||||||
|
('Konjskih_snaga', models.CharField(max_length=30)),
|
||||||
|
('Metalik', models.CharField(max_length=30)),
|
||||||
|
('Masa_Težina_kg', models.CharField(max_length=30)),
|
||||||
|
('Tip', models.CharField(max_length=30)),
|
||||||
|
('Pogon', models.CharField(max_length=30)),
|
||||||
|
('Emisioni_standard', models.CharField(max_length=30)),
|
||||||
|
('Veličina_felgi', models.CharField(max_length=30)),
|
||||||
|
('Transmisija', models.CharField(max_length=30)),
|
||||||
|
('Broj_stepeni_prijenosa', models.CharField(max_length=30)),
|
||||||
|
('Boja', models.CharField(max_length=30)),
|
||||||
|
('Muzika_ozvučenje', models.CharField(max_length=30)),
|
||||||
|
('Parking_senzori', models.CharField(max_length=30)),
|
||||||
|
('Parking_kamera', models.CharField(max_length=30)),
|
||||||
|
('Registrovan_do', models.CharField(max_length=30)),
|
||||||
|
('Godina_prve_registracije', models.CharField(max_length=30)),
|
||||||
|
('Broj_prethodnih_vlasnik', models.CharField(max_length=30)),
|
||||||
|
('Posjeduje_gume', models.CharField(max_length=30)),
|
||||||
|
('Višezonska_klima', models.CharField(max_length=30)),
|
||||||
|
('Rolo_zavjese', models.CharField(max_length=30)),
|
||||||
|
('Svjetla', models.CharField(max_length=30)),
|
||||||
|
('Zaštita_Blokada', models.CharField(max_length=30)),
|
||||||
|
('Sjedećih_mjesta', models.CharField(max_length=30)),
|
||||||
|
('Turbo', models.CharField(max_length=30)),
|
||||||
|
('DPF_FAP_filter', models.CharField(max_length=30)),
|
||||||
|
('Strane_tablice', models.CharField(max_length=30)),
|
||||||
|
('Ocarinjen', models.CharField(max_length=30)),
|
||||||
|
('Prilagođen_invalidima', models.CharField(max_length=30)),
|
||||||
|
('Servo_volan', models.CharField(max_length=30)),
|
||||||
|
('Tempomat', models.CharField(max_length=30)),
|
||||||
|
('ESP', models.CharField(max_length=30)),
|
||||||
|
('El_podizači_stakala', models.CharField(max_length=30)),
|
||||||
|
('Senzor_mrtvog_ugla', models.CharField(max_length=30)),
|
||||||
|
('Digitalna_klima', models.CharField(max_length=30)),
|
||||||
|
('Touch_screen_ekran', models.CharField(max_length=30)),
|
||||||
|
('Panorama_krov', models.CharField(max_length=30)),
|
||||||
|
('Koža', models.CharField(max_length=30)),
|
||||||
|
('Masaža_sjedišta', models.CharField(max_length=30)),
|
||||||
|
('El_pomjeranje_sjedišta', models.CharField(max_length=30)),
|
||||||
|
('Senzor_auto_svjetla', models.CharField(max_length=30)),
|
||||||
|
('Alarm', models.CharField(max_length=30)),
|
||||||
|
('Daljinsko_otključavanje', models.CharField(max_length=30)),
|
||||||
|
('Auto_kuka', models.CharField(max_length=30)),
|
||||||
|
('Udaren', models.CharField(max_length=30)),
|
||||||
|
('Start_Stop_sistem', models.CharField(max_length=30)),
|
||||||
|
('Park_assist', models.CharField(max_length=30)),
|
||||||
|
('Registrovan', models.CharField(max_length=30)),
|
||||||
|
('Na_lizingu', models.CharField(max_length=30)),
|
||||||
|
('Servisna_knjiga', models.CharField(max_length=30)),
|
||||||
|
('Komande_na_volanu', models.CharField(max_length=30)),
|
||||||
|
('ABS', models.CharField(max_length=30)),
|
||||||
|
('Airbag', models.CharField(max_length=30)),
|
||||||
|
('Električni_retrovizori', models.CharField(max_length=30)),
|
||||||
|
('Klima', models.CharField(max_length=30)),
|
||||||
|
('Navigacija', models.CharField(max_length=30)),
|
||||||
|
('Šiber', models.CharField(max_length=30)),
|
||||||
|
('Naslon_za_ruku', models.CharField(max_length=30)),
|
||||||
|
('Hlađenje_sjedišta', models.CharField(max_length=30)),
|
||||||
|
('Grijanje_sjedišta', models.CharField(max_length=30)),
|
||||||
|
('Memorija_sjedišta', models.CharField(max_length=30)),
|
||||||
|
('Alu_felge', models.CharField(max_length=30)),
|
||||||
|
('Centralna_brava', models.CharField(max_length=30)),
|
||||||
|
('Oldtimer', models.CharField(max_length=30)),
|
||||||
|
('ISOFIX', models.CharField(max_length=30)),
|
||||||
|
('Datum', models.DateField()),
|
||||||
|
('Vrijeme', models.TimeField()),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
]
|
||||||
0
kivi_cars/cars/migrations/__init__.py
Normal file
0
kivi_cars/cars/migrations/__init__.py
Normal file
84
kivi_cars/cars/models.py
Normal file
84
kivi_cars/cars/models.py
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
from django.db import models
|
||||||
|
|
||||||
|
|
||||||
|
# Create your models here.
|
||||||
|
class Car (models.Model):
|
||||||
|
Olx_id = models.CharField(max_length=10)
|
||||||
|
Kategorija = models.CharField(max_length=30)
|
||||||
|
Cijena = models.CharField(max_length=30)
|
||||||
|
Stanje = models.CharField(max_length=30)
|
||||||
|
Lokacija_kanton = models.CharField(max_length=50)
|
||||||
|
Lokacija_grad = models.CharField(max_length=50)
|
||||||
|
Proizvođač = models.CharField(max_length=30)
|
||||||
|
Model = models.CharField(max_length=30)
|
||||||
|
Godište = models.CharField(max_length=30)
|
||||||
|
Kilometraža = models.CharField(max_length=30)
|
||||||
|
Kilovata_KW = models.CharField(max_length=30)
|
||||||
|
Kubikaža = models.CharField(max_length=30)
|
||||||
|
Gorivo = models.CharField(max_length=30)
|
||||||
|
Broj_vrata = models.CharField(max_length=30)
|
||||||
|
Konjskih_snaga = models.CharField(max_length=30)
|
||||||
|
Metalik = models.CharField(max_length=30)
|
||||||
|
Masa_Težina_kg = models.CharField(max_length=30)
|
||||||
|
Tip = models.CharField(max_length=30)
|
||||||
|
Pogon = models.CharField(max_length=30)
|
||||||
|
Emisioni_standard = models.CharField(max_length=30)
|
||||||
|
Veličina_felgi = models.CharField(max_length=30)
|
||||||
|
Transmisija = models.CharField(max_length=30)
|
||||||
|
Broj_stepeni_prijenosa = models.CharField(max_length=30)
|
||||||
|
Boja = models.CharField(max_length=30)
|
||||||
|
Muzika_ozvučenje = models.CharField(max_length=30)
|
||||||
|
Parking_senzori= models.CharField(max_length=30)
|
||||||
|
Parking_kamera = models.CharField(max_length=30)
|
||||||
|
Registrovan_do = models.CharField(max_length=30)
|
||||||
|
Godina_prve_registracije = models.CharField(max_length=30)
|
||||||
|
Broj_prethodnih_vlasnik = models.CharField(max_length=30)
|
||||||
|
Posjeduje_gume = models.CharField(max_length=30)
|
||||||
|
Višezonska_klima = models.CharField(max_length=30)
|
||||||
|
Rolo_zavjese = models.CharField(max_length=30)
|
||||||
|
Svjetla = models.CharField(max_length=30)
|
||||||
|
Zaštita_Blokada = models.CharField(max_length=30)
|
||||||
|
Sjedećih_mjesta = models.CharField(max_length=30)
|
||||||
|
Turbo = models.CharField(max_length=30)
|
||||||
|
DPF_FAP_filter = models.CharField(max_length=30)
|
||||||
|
Strane_tablice = models.CharField(max_length=30)
|
||||||
|
Ocarinjen = models.CharField(max_length=30)
|
||||||
|
Prilagođen_invalidima = models.CharField(max_length=30)
|
||||||
|
Servo_volan = models.CharField(max_length=30)
|
||||||
|
Tempomat = models.CharField(max_length=30)
|
||||||
|
ESP = models.CharField(max_length=30)
|
||||||
|
El_podizači_stakala = models.CharField(max_length=30)
|
||||||
|
Senzor_mrtvog_ugla = models.CharField(max_length=30)
|
||||||
|
Digitalna_klima = models.CharField(max_length=30)
|
||||||
|
Touch_screen_ekran = models.CharField(max_length=30)
|
||||||
|
Panorama_krov = models.CharField(max_length=30)
|
||||||
|
Koža = models.CharField(max_length=30)
|
||||||
|
Masaža_sjedišta = models.CharField(max_length=30)
|
||||||
|
El_pomjeranje_sjedišta= models.CharField(max_length=30)
|
||||||
|
Senzor_auto_svjetla = models.CharField(max_length=30)
|
||||||
|
Alarm = models.CharField(max_length=30)
|
||||||
|
Daljinsko_otključavanje = models.CharField(max_length=30)
|
||||||
|
Auto_kuka = models.CharField(max_length=30)
|
||||||
|
Udaren = models.CharField(max_length=30)
|
||||||
|
Start_Stop_sistem = models.CharField(max_length=30)
|
||||||
|
Park_assist = models.CharField(max_length=30)
|
||||||
|
Registrovan = models.CharField(max_length=30)
|
||||||
|
Na_lizingu = models.CharField(max_length=30)
|
||||||
|
Servisna_knjiga = models.CharField(max_length=30)
|
||||||
|
Komande_na_volanu = models.CharField(max_length=30)
|
||||||
|
ABS = models.CharField(max_length=30)
|
||||||
|
Airbag = models.CharField(max_length=30)
|
||||||
|
Električni_retrovizori = models.CharField(max_length=30)
|
||||||
|
Klima = models.CharField(max_length=30)
|
||||||
|
Navigacija = models.CharField(max_length=30)
|
||||||
|
Šiber= models.CharField(max_length=30)
|
||||||
|
Naslon_za_ruku= models.CharField(max_length=30)
|
||||||
|
Hlađenje_sjedišta = models.CharField(max_length=30)
|
||||||
|
Grijanje_sjedišta = models.CharField(max_length=30)
|
||||||
|
Memorija_sjedišta = models.CharField(max_length=30)
|
||||||
|
Alu_felge = models.CharField(max_length=30)
|
||||||
|
Centralna_brava = models.CharField(max_length=30)
|
||||||
|
Oldtimer = models.CharField(max_length=30)
|
||||||
|
ISOFIX = models.CharField(max_length=30)
|
||||||
|
Datum = models.DateField()
|
||||||
|
Vrijeme = models.TimeField()
|
||||||
3
kivi_cars/cars/tests.py
Normal file
3
kivi_cars/cars/tests.py
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
from django.test import TestCase
|
||||||
|
|
||||||
|
# Create your tests here.
|
||||||
3
kivi_cars/cars/views.py
Normal file
3
kivi_cars/cars/views.py
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
from django.shortcuts import render
|
||||||
|
|
||||||
|
# Create your views here.
|
||||||
@@ -37,6 +37,11 @@ INSTALLED_APPS = [
|
|||||||
'django.contrib.sessions',
|
'django.contrib.sessions',
|
||||||
'django.contrib.messages',
|
'django.contrib.messages',
|
||||||
'django.contrib.staticfiles',
|
'django.contrib.staticfiles',
|
||||||
|
|
||||||
|
|
||||||
|
'rest_framework',
|
||||||
|
'Generator',
|
||||||
|
'cars'
|
||||||
]
|
]
|
||||||
|
|
||||||
MIDDLEWARE = [
|
MIDDLEWARE = [
|
||||||
@@ -75,17 +80,12 @@ WSGI_APPLICATION = 'kivi_cars.wsgi.application'
|
|||||||
|
|
||||||
DATABASES = {
|
DATABASES = {
|
||||||
'default': {
|
'default': {
|
||||||
'ENGINE': 'django.db.backends.sqlite3',
|
'ENGINE': 'django.db.backends.postgresql',
|
||||||
'NAME': BASE_DIR / 'db.sqlite3',
|
'NAME': 'kivi_cars',
|
||||||
}
|
'USER': 'postgres',
|
||||||
# 'default': {
|
'HOST': 'localhost',
|
||||||
# 'ENGINE': 'django.db.backends.postgresql_psycopg2',
|
'PASSWORD': 'postgres'
|
||||||
# 'NAME': 'kivi_cars',
|
}
|
||||||
# 'USER': 'postgres',
|
|
||||||
# 'PASSWORD': 'b18',
|
|
||||||
# 'HOST': 'localhost',
|
|
||||||
# 'PORT': '5432',
|
|
||||||
# }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -13,9 +13,11 @@ Including another URLconf
|
|||||||
1. Import the include() function: from django.urls import include, path
|
1. Import the include() function: from django.urls import include, path
|
||||||
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
|
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
|
||||||
"""
|
"""
|
||||||
|
from django.urls.conf import include
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from django.urls import path
|
from django.urls import path
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path('admin/', admin.site.urls),
|
path('admin/', admin.site.urls),
|
||||||
|
path('generator/', include("Generator.urls")),
|
||||||
]
|
]
|
||||||
|
|||||||
Reference in New Issue
Block a user