From 2e44175ce9e9e5ea18e98e4aedbad6326c548163 Mon Sep 17 00:00:00 2001 From: Baitur Date: Mon, 11 Sep 2023 16:49:08 +0600 Subject: [PATCH] first --- .idea/.gitignore | 8 ++ .idea/Transparency.iml | 11 ++ .../inspectionProfiles/profiles_settings.xml | 6 + .idea/misc.xml | 4 + .idea/modules.xml | 8 ++ .idea/vcs.xml | 6 + README.md | 0 kgroad | 28 ++++ kgroad.pub | 1 + main/db.sqlite3 | Bin 0 -> 139264 bytes main/main/__init__.py | 0 .../main/__pycache__/__init__.cpython-311.pyc | Bin 0 -> 210 bytes .../main/__pycache__/settings.cpython-311.pyc | Bin 0 -> 2659 bytes main/main/__pycache__/urls.cpython-311.pyc | Bin 0 -> 1194 bytes main/main/__pycache__/wsgi.cpython-311.pyc | Bin 0 -> 725 bytes main/main/asgi.py | 16 +++ main/main/settings.py | 125 ++++++++++++++++++ main/main/urls.py | 24 ++++ main/main/wsgi.py | 16 +++ main/manage.py | 22 +++ main/me1.jpg | Bin 0 -> 74222 bytes main/parser/__init__.py | 0 .../__pycache__/__init__.cpython-311.pyc | Bin 0 -> 212 bytes main/parser/__pycache__/admin.cpython-311.pyc | Bin 0 -> 413 bytes main/parser/__pycache__/apps.cpython-311.pyc | Bin 0 -> 583 bytes .../parser/__pycache__/models.cpython-311.pyc | Bin 0 -> 998 bytes .../__pycache__/serializers.cpython-311.pyc | Bin 0 -> 863 bytes main/parser/__pycache__/urls.cpython-311.pyc | Bin 0 -> 633 bytes main/parser/__pycache__/views.cpython-311.pyc | Bin 0 -> 1212 bytes main/parser/admin.py | 5 + main/parser/apps.py | 6 + main/parser/migrations/0001_initial.py | 24 ++++ main/parser/migrations/__init__.py | 0 .../__pycache__/0001_initial.cpython-311.pyc | Bin 0 -> 1242 bytes .../__pycache__/__init__.cpython-311.pyc | Bin 0 -> 223 bytes main/parser/models.py | 11 ++ main/parser/parser.py | 49 +++++++ main/parser/serializers.py | 9 ++ main/parser/tests.py | 3 + main/parser/urls.py | 9 ++ main/parser/views.py | 17 +++ 41 files changed, 408 insertions(+) create mode 100644 .idea/.gitignore create mode 100644 .idea/Transparency.iml create mode 100644 .idea/inspectionProfiles/profiles_settings.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml create mode 100644 README.md create mode 100644 kgroad create mode 100644 kgroad.pub create mode 100644 main/db.sqlite3 create mode 100644 main/main/__init__.py create mode 100644 main/main/__pycache__/__init__.cpython-311.pyc create mode 100644 main/main/__pycache__/settings.cpython-311.pyc create mode 100644 main/main/__pycache__/urls.cpython-311.pyc create mode 100644 main/main/__pycache__/wsgi.cpython-311.pyc create mode 100644 main/main/asgi.py create mode 100644 main/main/settings.py create mode 100644 main/main/urls.py create mode 100644 main/main/wsgi.py create mode 100755 main/manage.py create mode 100644 main/me1.jpg create mode 100644 main/parser/__init__.py create mode 100644 main/parser/__pycache__/__init__.cpython-311.pyc create mode 100644 main/parser/__pycache__/admin.cpython-311.pyc create mode 100644 main/parser/__pycache__/apps.cpython-311.pyc create mode 100644 main/parser/__pycache__/models.cpython-311.pyc create mode 100644 main/parser/__pycache__/serializers.cpython-311.pyc create mode 100644 main/parser/__pycache__/urls.cpython-311.pyc create mode 100644 main/parser/__pycache__/views.cpython-311.pyc create mode 100644 main/parser/admin.py create mode 100644 main/parser/apps.py create mode 100644 main/parser/migrations/0001_initial.py create mode 100644 main/parser/migrations/__init__.py create mode 100644 main/parser/migrations/__pycache__/0001_initial.cpython-311.pyc create mode 100644 main/parser/migrations/__pycache__/__init__.cpython-311.pyc create mode 100644 main/parser/models.py create mode 100644 main/parser/parser.py create mode 100644 main/parser/serializers.py create mode 100644 main/parser/tests.py create mode 100644 main/parser/urls.py create mode 100644 main/parser/views.py diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/Transparency.iml b/.idea/Transparency.iml new file mode 100644 index 0000000..f453316 --- /dev/null +++ b/.idea/Transparency.iml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..105ce2d --- /dev/null +++ b/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..d038a12 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..61e2707 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..e69de29 diff --git a/kgroad b/kgroad new file mode 100644 index 0000000..d59454e --- /dev/null +++ b/kgroad @@ -0,0 +1,28 @@ +-----BEGIN OPENSSH PRIVATE KEY----- +b3BlbnNzaC1rZXktdjEAAAAACmFlczI1Ni1jdHIAAAAGYmNyeXB0AAAAGAAAABAWGM7tCg +qA5iHD9ENKuGrpAAAAEAAAAAEAAAEXAAAAB3NzaC1yc2EAAAADAQABAAABAQDJOhQJzuPo +/AzR9zqM80GLzaoR4SDonhGTHlASdIwky75T1n8l7o0HTQ47b8Nl7FX7kLJKxhPeRSpUcu +GiJwl9F+/ZCqTzr19IA9keb71n6kDZImeF5KARrMUnqAaMIvHvI5QLT8UmOZ2nrsLDBPiO +haGKWkLUBjdm9W6F+arQKDrC5pGPJUbtfq0zjxHhaslvdg6hXaaH0zWhH3fla7iTYGiUge +M4Zp4ykqOZwbxRsuLasXR0j6/1frpiF9sHWyV5+2T3qnO7V3n1pRHb+atDPmkb8IZuCDQ3 +w7zMOtcac9FAu+A4Q+CZ0alFUm+2odFEfA3n8ABG/uaQZY6S70pTAAAD4IrCQCAIAGVXT7 +bZ150ayR0uqrx2nrlS9Qcaz7xDeX7UOE0/kkl20Gn9pRv3mENvtRcdsDmNyBGG5O+weXXq +2uXL6n/WICUXJWHjRCrJaLvVD/9Kap5C3VSbwvxQpm0EgOvfLzwGWqUvdK9PfkiRBS2dYV +IQDkYp8qOfvC32zsy3cTDgNnrAu9HjbRiATGF+OZVGDMmDuzp2q7S6KTSmHTzjkBU1pdW8 +4IWafWK19f5uNT8zPg8KZjSsnLP8Hgal+CqaenVITtStQUSByDfPVk7aQg7olVfvRVdG7k +KmkgswCy2eTLLHaF9ofdmmT/eq5Dwv6xgAVgfUkXRVpbpHUIbXPxlKsB3IZvJSssYpGkz8 +WYJzthc9pKkKDs6Y8QEgspPgCetGxv/1F9+FNFfxfVUTVeE4Mxr6Vu+ll5+MWRlYI8nO6j +QacHtMDRpOgj/a0HAVgRvsfBx7+CGWCzOmBu/AjwwUYlFTeZoZWPPeM9750lxJWtBE2ZmI +7o5CmMMvtTzGRNKa1xOhoyqoITo4uudgC5ZUeSIIm6DH4/KFyMAicW8xS4jc37zY7JTwXA +V/WWOzGihAGO14qME0+HjrafVR3UfLkFwrQBPQ31oTPORHNLYDsFe2okpo1tsSSCYnnVeM ++d2tO+TQUKCk4v0Z0oq0JLH43InQJEyf9t5YtSL2Z2bOSAYuoYiWaAv1AQwAo6EQJDfNWF +p+zLO3SGWXBYYoRfha4sPlOHMqD/hzTAdKDo24GHfmYnr4NObS1IP73SdP78LRMK9rT0hR +PngpviFWfsY10GeclZbBDlQ+r2ZBHzrAAx5J/1gJqiwbTxwNJNWLSK/d0Dx7OVvvsBZzJw +VEmk5IjaU+jsYEIlkKtoHoXEe/6UoNUaDyVTNUWRezm/AoMnTEd7BkKqn78YoxP6ZwI8HD +O8QxRdNnOp0e1y1TGiVbodmZGgGDwxYElLSR8slLsBG2LbWM1PWm1OMFmqscKWZi0h3gn8 +EBzdlFulFqi+7K+pU171wJj//eneaZaxUWEfRbTjN8NdGlmBBI6iPW4V0Wz9mWXkBE9FP4 +IO04czdI4T+PTHtIfVqq9w02h/e1xWvV0CtdDCnfzd4ERIT6ABBI3R9qY5xgt86jdwG4xH +T1d8Kq3U42QJtDnrqqSOPJCy+m/PYCDq+A6ond/6cBDV1mX4vGY9UKCGHwgVqBTMUBRQxK +L5GPKsepJjxj8pUH0p/+PMfhXaJbZYJCiJLQ8rZ7/ZQG+1NLG//3FpJGTkFaPdyRdCjemb +++GUmkKRqOv1nESEXf27F6qdrsRvUo5WArRxTqPp3tCCnI1X3T +-----END OPENSSH PRIVATE KEY----- diff --git a/kgroad.pub b/kgroad.pub new file mode 100644 index 0000000..e6f8508 --- /dev/null +++ b/kgroad.pub @@ -0,0 +1 @@ +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDJOhQJzuPo/AzR9zqM80GLzaoR4SDonhGTHlASdIwky75T1n8l7o0HTQ47b8Nl7FX7kLJKxhPeRSpUcuGiJwl9F+/ZCqTzr19IA9keb71n6kDZImeF5KARrMUnqAaMIvHvI5QLT8UmOZ2nrsLDBPiOhaGKWkLUBjdm9W6F+arQKDrC5pGPJUbtfq0zjxHhaslvdg6hXaaH0zWhH3fla7iTYGiUgeM4Zp4ykqOZwbxRsuLasXR0j6/1frpiF9sHWyV5+2T3qnO7V3n1pRHb+atDPmkb8IZuCDQ3w7zMOtcac9FAu+A4Q+CZ0alFUm+2odFEfA3n8ABG/uaQZY6S70pT baiturtashbaev@MacBook-Pro-Baitur.local diff --git a/main/db.sqlite3 b/main/db.sqlite3 new file mode 100644 index 0000000000000000000000000000000000000000..e8dd6fbeeef27e7d8ae13c5c0aaf97809c62c825 GIT binary patch literal 139264 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 literal 0 HcmV?d00001 diff --git a/main/main/__init__.py b/main/main/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/main/main/__pycache__/__init__.cpython-311.pyc b/main/main/__pycache__/__init__.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..99125cd7dec8e108dec302ce3cdbecacb123aee4 GIT binary patch literal 210 zcmZ3^%ge<81ar6iN&(T2K?DpiLK&agfQ;!3DGb33nv8xc8H$*I{LdiCuSq~cKeRZt zs8~NKF|(w!s3fsCBPlVpOy4CxximL5ucTQ2!o&+3F6=ndcCqPV^Th`JfTH}Y)MTKz zV^LCSCXfy(O3W)RNGwXtORm(ju^Amrk7h~?hm|;vD2X;wl5K>ek2xg;?-;zNa9l}akl+aRWvRy;2Crvo}expqX!;gia7d`ihfyc6)7 z#(z5wfYMB_s(rkhY z&7Hz|92m@NxC2Ve)+~FddA`tN;G!_}c!ht5zXaAxzC+U@1!{orj%HKSD8R5cC`6+= zc?*J*)P`+$*?WS3%@*SaF-94*%#J_|0UQdp*`+NejItF5?(GdySnuh2L8r_vnCnNo z(F_cM2(=0iG`&aI|A}Rh^|3&I`G;BL+(=!sH=KoG6{x{Tt7nnacCEAXaBgc0KWxoix_tY>X7~EVw;RQTGd*y_w@kyfXp;|$ z>YSM5_8{Wf38rsC4BOu666Tzm5Hi9Tl=($L2LxIhEY3_?*l;i{|2UW%>uMGwmYcN* zv(yT~J+A7AK`Jq*ZVyu&G%_4lTe`@dWvR??8tQ^XmE0aNnY4KzB@_;vHReUiB zbU?>6_{HG$AF9k+=NEz8rDS_d_1Z)(8WeRr4-wW-PudC^bj)ya6QdH28?Ow?I%akC zC7aM`Yim<$Z2?I5kCyzh*1A3#*qB|?#~$Cabmj;{7dGj1b$}n=1Y2U@5j^-(fW*d7 z%-np?6Ax__fYXAEOp6sG&V@-gFKY3aG<$95;wxxcvZRK*p^$^h1#I}=$49n;kq12A9} z?h}fGaQqs8MYMeY_iQ554%Iau2zLh>rsdpvRZlC_pq*Z)LX5V(ab*AgtJ)6$QXl4c zj){rR_yyVqIGIb7 z=(t)u<;GPNu60#)<6XEsb=tJTP+&Kqs{V!J^Wmm3^#>%ldH{uPVnLK8|FGSZEG@1| z4fO-*V>eoo7S@*Cj997E?nx!}PEBseZnj*N8^8hvbcpPxR?4MPMY<=hN^W|!R%@th ztChuCb;(UOq?LL_Y)G=3yC*M~ef>&#QS_V1O_s!l=!ccvS#hm#N3Dype6O}zQtyhD zG6-wXgPDq0U0xHHC3Ue@lE7hkMN*X-G)`g-5-wl5UUg&stf4^W4e-3^M|bljX-QnG zG*s|hQB!!)&&UY|B+!5 zP%q4JoEJ)Q5fAxf7ICL{(d_u}Vkn*a;>y>FFK>Ny>-VWQew%t@Z|cow{QX=9 zWl?sO>!(05ndwIla`}G7OC|Fm4~zzzwfiWVWJ&kf_`)MzMrX_Aam*1bBJxCWk z6n!&0M#Aywl$T6LV;=HJIGYLelU@N$&+Vcd1de9+^Zb5p_PZNn^U}S2#gcKqCUR(aD1^kSj=Qz3&H-qbLjX?KXZ^i(@!2u9qT6!U~@4qjk2d8 R`4l?&?k>s?hIJ0g`7ieGdN2S0 literal 0 HcmV?d00001 diff --git a/main/main/__pycache__/urls.cpython-311.pyc b/main/main/__pycache__/urls.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..121e767531d244b88d650e09cc22f22531dbd080 GIT binary patch literal 1194 zcmb7D&ui2`6rN<0cAI5e@#Jx&m2IGAu;^v+2gO<}h={fn7IZtC%N1;?$@Qz{<1BAqi$zY!OaLk#fTj_n zl3~eM)xltGrBYcXB;daEf-Rb~_^6!EW5N=0)mtQrr=c&2P9{)Z66ek{8UvQBIxC&T z&-vzMbI>auUJ3$C6CB1V7pjVJQ}7taJ9V0-!{C5sp1(NE*9x?NF@>-c#J1-vm4%_M zHjmi?PH4<-RP?ywI=3S#<>dwl3&v3Y#)7Lh6Pk#ZGak{o3t0cdM(2A})-}ky`x~Rx z#E&{bn6#h?c|9#nZ||r-t9fHEP=W2yxoqCW&0#C6gLVzJ!_y5PksRhO4ineREZy;Ja+tk4k;h4fc1tN0l8JofeRnFGtk>b( z)a%*wkSZutB5Vk_Z73^^@fQ|EgssDt3>C{Pttu;x?eqt93e)Jv6L4f5%1F|nq3Q@l zWxGMyHd*F=CuWI~r2D4(sr&is>)y-WtKJ@YFt{L+EQtmSVSY`}L;_is_&Y@3p@Gvi zy>#cScs=GpCt^3nIVh$ts8rzk1;a4<=8R$Wk#-mv7rO|LzbEKY_fK!Xi0rAo<^2l> w*AAu{C>Q6(Mwfe`9~+;Bl`!dt9FFS#!tMT;DFtn0qDth-oPN6VwE4W&i*H literal 0 HcmV?d00001 diff --git a/main/main/__pycache__/wsgi.cpython-311.pyc b/main/main/__pycache__/wsgi.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..fcde04654d6a0ba2fc5b9f94b16fe6ed9a46c751 GIT binary patch literal 725 zcmY*X&1)1f6i;T`u1@VLVtWpymx4}EJc&pPt)-%^uq}l>IGdfk-A$QEh9tYSJ=G7q zd-5cBsz@(Ac<_(#Fe?RNP6bci3dKuLCS4cmOY&awzJ9-ue4d&Lk&};K&-p8i&@X=& z$=JWmS=VhoAdVV{V;-cqft{_SK~`y0Fao?i%0!>WN5z*dALHW(0YZmv4F#hBLFK?5 z4o5E3nBYMj%}?wdhgTZxClv>0VmBS%kxwu%nBu&P1o?$8_4wKP(&p3Uy(xe7$bhv%cFcUWtj4j!kK-~> zro1s^5had%{8Ems63k}-#x$b zaQGIFbj^XeFNVyPQ>PV-@o7-SW2eZgn+S*dSN%9acZ>h$2@2kZKhg9LG+oR@N7n~v c;TSCxXyK$bThwL;wYlTk-2S8=`kL$g7nhsd9{>OV literal 0 HcmV?d00001 diff --git a/main/main/asgi.py b/main/main/asgi.py new file mode 100644 index 0000000..4d4ab0c --- /dev/null +++ b/main/main/asgi.py @@ -0,0 +1,16 @@ +""" +ASGI config for main project. + +It exposes the ASGI callable as a module-level variable named ``application``. + +For more information on this file, see +https://docs.djangoproject.com/en/4.2/howto/deployment/asgi/ +""" + +import os + +from django.core.asgi import get_asgi_application + +os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'main.settings') + +application = get_asgi_application() diff --git a/main/main/settings.py b/main/main/settings.py new file mode 100644 index 0000000..8c62b5c --- /dev/null +++ b/main/main/settings.py @@ -0,0 +1,125 @@ +""" +Django settings for main project. + +Generated by 'django-admin startproject' using Django 4.2.1. + +For more information on this file, see +https://docs.djangoproject.com/en/4.2/topics/settings/ + +For the full list of settings and their values, see +https://docs.djangoproject.com/en/4.2/ref/settings/ +""" + +from pathlib import Path + +# Build paths inside the project like this: BASE_DIR / 'subdir'. +BASE_DIR = Path(__file__).resolve().parent.parent + + +# Quick-start development settings - unsuitable for production +# See https://docs.djangoproject.com/en/4.2/howto/deployment/checklist/ + +# SECURITY WARNING: keep the secret key used in production secret! +SECRET_KEY = 'django-insecure-w^pg5f=r=ex8d)-ez0&n6b2b8)uawa7myx+kkdxc+13@(jp8*0' + +# SECURITY WARNING: don't run with debug turned on in production! +DEBUG = True + +ALLOWED_HOSTS = [] + + +# Application definition + +INSTALLED_APPS = [ + 'django.contrib.admin', + 'django.contrib.auth', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.messages', + 'django.contrib.staticfiles', + 'parser', + 'rest_framework' +] + +MIDDLEWARE = [ + 'django.middleware.security.SecurityMiddleware', + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.middleware.common.CommonMiddleware', + 'django.middleware.csrf.CsrfViewMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.contrib.messages.middleware.MessageMiddleware', + 'django.middleware.clickjacking.XFrameOptionsMiddleware', +] + +ROOT_URLCONF = 'main.urls' + +TEMPLATES = [ + { + 'BACKEND': 'django.template.backends.django.DjangoTemplates', + 'DIRS': [], + 'APP_DIRS': True, + 'OPTIONS': { + 'context_processors': [ + 'django.template.context_processors.debug', + 'django.template.context_processors.request', + 'django.contrib.auth.context_processors.auth', + 'django.contrib.messages.context_processors.messages', + ], + }, + }, +] + +WSGI_APPLICATION = 'main.wsgi.application' + + +# Database +# https://docs.djangoproject.com/en/4.2/ref/settings/#databases + +DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.sqlite3', + 'NAME': BASE_DIR / 'db.sqlite3', + } +} + + +# Password validation +# https://docs.djangoproject.com/en/4.2/ref/settings/#auth-password-validators + +AUTH_PASSWORD_VALIDATORS = [ + { + 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', + }, +] + + +# Internationalization +# https://docs.djangoproject.com/en/4.2/topics/i18n/ + +LANGUAGE_CODE = 'ru' + +TIME_ZONE = 'Asia/Bishkek' + +USE_I18N = True + +USE_TZ = True + + +# Static files (CSS, JavaScript, Images) +# https://docs.djangoproject.com/en/4.2/howto/static-files/ + +STATIC_URL = 'static/' + +# Default primary key field type +# https://docs.djangoproject.com/en/4.2/ref/settings/#default-auto-field + +DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' diff --git a/main/main/urls.py b/main/main/urls.py new file mode 100644 index 0000000..a5cd77f --- /dev/null +++ b/main/main/urls.py @@ -0,0 +1,24 @@ +""" +URL configuration for main project. + +The `urlpatterns` list routes URLs to views. For more information please see: + https://docs.djangoproject.com/en/4.2/topics/http/urls/ +Examples: +Function views + 1. Add an import: from my_app import views + 2. Add a URL to urlpatterns: path('', views.home, name='home') +Class-based views + 1. Add an import: from other_app.views import Home + 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home') +Including another URLconf + 1. Import the include() function: from django.urls import include, path + 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) +""" +from django.contrib import admin +from django.urls import path, include + + +urlpatterns = [ + path('admin/', admin.site.urls), + path('', include("parser.urls")), +] diff --git a/main/main/wsgi.py b/main/main/wsgi.py new file mode 100644 index 0000000..87086a6 --- /dev/null +++ b/main/main/wsgi.py @@ -0,0 +1,16 @@ +""" +WSGI config for main project. + +It exposes the WSGI callable as a module-level variable named ``application``. + +For more information on this file, see +https://docs.djangoproject.com/en/4.2/howto/deployment/wsgi/ +""" + +import os + +from django.core.wsgi import get_wsgi_application + +os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'main.settings') + +application = get_wsgi_application() diff --git a/main/manage.py b/main/manage.py new file mode 100755 index 0000000..fbda2b3 --- /dev/null +++ b/main/manage.py @@ -0,0 +1,22 @@ +#!/usr/bin/env python +"""Django's command-line utility for administrative tasks.""" +import os +import sys + + +def main(): + """Run administrative tasks.""" + os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'main.settings') + try: + from django.core.management import execute_from_command_line + except ImportError as exc: + raise ImportError( + "Couldn't import Django. Are you sure it's installed and " + "available on your PYTHONPATH environment variable? Did you " + "forget to activate a virtual environment?" + ) from exc + execute_from_command_line(sys.argv) + + +if __name__ == '__main__': + main() diff --git a/main/me1.jpg b/main/me1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8a3d27785527f2207e0ea2c59ff83621af47a498 GIT binary patch literal 74222 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 literal 0 HcmV?d00001 diff --git a/main/parser/__init__.py b/main/parser/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/main/parser/__pycache__/__init__.cpython-311.pyc b/main/parser/__pycache__/__init__.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bc26a9db002a611fa9cdde561f13a72dfd1a3469 GIT binary patch literal 212 zcmZ3^%ge<81om5hrGV(iAOZ#$p^VRLK*n^26oz01O-8?!3`I;p{%4TnSCA(C(Bjmh zV*RAV%#zZglEmVSq{P%ReV6>?(%jU%l4AV}6EAGIu;WbI#ionR7aQ~git@8klY!!n zMM2KczG$)vkyY ZXeG#H#r#0x12ZEd;|B&9QN#=s0|4dQJsQ$Y~A3B{$8FKWPkeD~h_-tpf1Zd$D-AU>Ywd>`|BDJoch#jKCTC2-&*goq3X z0bb))Sc|NIML>|iu12n$s`{UWbxi>7@cjbk?HzEPX(?S&IE+V9P0N2&c0Xo(%dHp7 zJYZ@Vcl}r;T6((lQ`DoFi_qxuP+=RHh@zpzP?|*OTbN-Nz8D6&XM{G?V=_r~!pwok z#3Aj)ei{jt7@A#V_u0eaS$>?K!cE_E Cd~c=z literal 0 HcmV?d00001 diff --git a/main/parser/__pycache__/apps.cpython-311.pyc b/main/parser/__pycache__/apps.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8443a8c1ac40015b5b2192390692359928606b80 GIT binary patch literal 583 zcmZutzi-n(6n(6j(Cx&UPvxcxQj_d-uM3_wL=cT6I8s_GQH{(SO&$+G-V9 z+DNW}11CNN#3cj_I0kNf0B#C$V*-4_zckn2)(hy?e(11E@~vJRKaawZHy&1s!jURi zwvk+e0GDvUv&1#I;ac3p8dl!yGpU3u&%b}fCoCLCHXqnQ#D%Zy18>|*ljz73KF>Ge zLVVh-<(rg-ED)6DbxKj2`kFT>eVa1B$~@#^#8N+@3@gx4QNq%>J6P)Ge!oU=Ug7o1 z889zNWx~{(0Tb_>!)TZWB21K%U1guMuirk-&Sw|1sneIyL=17iCkMhq|5CD0VP7H~ zo;d;YLZ@ufVR5YN_)O{<7hoY#9faxqns=ULR(syqnI7sTTWjrU*UTH$FmxfQr(c$8 yYE}rhk*zlO%GdA92N>$1s}qEUNeG$4HV%6uEhw;bfp>8diMG$a-@V^^@9w>KcV8wZ3>;W$TvtX5+A2aPFjBEqs;!}telBSVCmFv% znI~#P_h8b7q<;j;A!5kJ6xoV`m|7qCAnmErhT=|Oq+;uXh|Gvn^;EkQk-fYJ)lV~R zDD`AquARFSlf5P;Pjh?7HfSDNF%s>0!=dLC@*(8t?9EM6jt;(I*Y!2{}{iIKg2ET8E@2C4eSqimANplb0-j6 z4rf7a$MPLFuz_A|$j>_r|S*-6(gr4-BoA3Q3NT z!0{O&i9rZ#)bylo67ss~c&UfWhLilmO@}YL%%glla^s2bY_NeL(Os!0#-MW&vh6U@ zJU4j7 zTx`yD%sDU?XFuKP6lagu&cdiziHns^vC?|lElll~JB6tuadtZ@l;Z-Ba%-ulVSTcP zu0mRuENQi*C3#wRf{n%kt)>m@EArK+6;H~t$6Z|HD(Okx=QH4tH!M~FdMd`ai>9Oh Y|6V4GA^%m_FCSEXN&D|>oP%`#00Q>%TL1t6 literal 0 HcmV?d00001 diff --git a/main/parser/__pycache__/serializers.cpython-311.pyc b/main/parser/__pycache__/serializers.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9052759d8e515bfc21312c7a32e13dd9c525d0a7 GIT binary patch literal 863 zcmZuvJ8u**5VrSqA<2b=@Q9#CT$AMoM3ImpQ6)kInx!zlvjZFU5$rvpP(^@HN~rP= zf)EWA;zv;INfaknNL1-Ay3kz3%$m!wO2+o*d3e7WkM~ovIZZ%JITGJs|Bc32{C~=D z4U|J7h@c5cX+$Xzj&Ktvbt9J&hukN^dq;#X>9#li_{b&X3oI*_dY8<24qGm=* z74sy1EtNi|*5^IUx#-yQ7RO}6J76CYNg^spTArFgV-}$~cB^^Rs#8}`L&gdMQ1lAGgnHmO z{;dHy4=3n5y&zzTkrP`yr=%{}mV!3#=IVvQpUDJOJGJfY<#p`s$vPi~j>`HL)-^*IP!3fDLfAD;ZYcJ~AWrx!%4yZi+!$2lc<^kf)_sppc46K>m z)?~qx|JLOGuGzPm8J>TMDuoMkNd>25z@qL2Hi4Bc?=q=`+=)c+%u~^8PaLL&8E5cl z!3VZAxJ{y?;tW&`X>JNxAV!NFDOe=_BrV@dYR%4GRI+K2_gJ{!Ul~eYNz+p59KZ`o zn)apnxirgE%W!ECl0ao7WT?KPOE^PUZ@|%4pjFW}^P-`QnCiBfIH0wDXBdbuQdED` zKlIu8yZ9u28;|L(?Ds?m_-)x19_)LPg$m?}uyaHM=7sdGGb3tcaCDv94ElWNi!HeX z&zV0`$Ka+m#(07r>4)KYOl8Jtp;p)F&i2 nuIaq1%hk^tNx2%AX;P;8XOd1JkOdWg48W+uwCD8C2R7tg! literal 0 HcmV?d00001 diff --git a/main/parser/__pycache__/views.cpython-311.pyc b/main/parser/__pycache__/views.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2153d3c81783760c8466e60128190244876743c2 GIT binary patch literal 1212 zcmcIizfTlF6rR~V_V(^L4ip6{f=0+IV%-+SMinK$#^yK=dRVAQ|; zu|Hshen=x713l1r4PYDD$i^=6u!%jzRIs!aSM_pcF2Slh;Av(aaLyiZb+2F+60EsJ zuVj`mQqWCg=bs^4r+9TRJ!D5kXb=AGFw03)0iuc!HI({~MOExl4OIsZBwba6exLf3 zISno}9+EKPRV?&n%A0}DDd6%PB~j?CL~bpJng?)C1m4_oKx~+Yw8R%=1twkkhCIBEfK~kTL`Il+u`9o zhi)wH7KCnDKJln!iK1nBfgQOL4_ek*MBFaJbl6ekgZe6Mgj}e^b%nkbQMSox$O@7i zhMjvCu^KMnd>3_O8ovoB<1Vn=s1qlQSV;JTI-%>ve9(wI>WAEjU&Zg^kDs5np0u8} zwu~hfBnKI@tWF)^?=a%?CSlZXY#JVMd;<*F(pZN(@R{Z&E5Rv=lF4+cptky7yK?%) zfu*Z%hk6uT8jUY^NLWTR3g37nN^B2}^h*;t>H z{>AFB7-E!%)(V4qZ3OHgll{wNM~Ja3GXrMQg-mvdQ0x3E(Ht_6u+Y=TBKxGa?>ah&}wmm&;ddhnd}Au(x?gIHbK$29k>vb?jlp6NaaWw zaVH@uijK(?{{=3JXz-|R9SgL>3E*Jd(g2;jF>tzgY2Q(ji^e(f9^c3B-Fx@m<4=o= z27>j=pC@FjAoQ0M<|{vAj;{gp0ue;8k9yd~J;hcqQqXNgllgGgw-kWfEr&pqY0G!u?bfO&x^vN1unLa?3dAX`-s&3CmK z27;3uXcoGKQw=7Vs3bqq_Eks&_H;c^$U=tH=NeKN>H8Qkuum~YhRF&db)+~doxv== zeGb8+rF|&fOW4x|(cXItRel$$lOI+7@7ck2kt{>O-WU4ad8M|5`gQ0Mp?Kt$Q0_EM zRg~O896D`A-Ix+l>@%)xS9{3dalH)uYxV{8~wBQ9^3`vR-p?w+<8nitcF*!A&cr&}z zT{#;}Hc*s4^Ex-+zPDryq2Jtg*_1Wz$h>EK*r&6>`WYRA8~Qr}VtoVUh^&_D#RC?* z(RRzFJ61Dn4|+6+Ba1)h2Ymd;50fX8r<0-e6$`tx4f-3bMLqa#F*k_%E`tnrt)A-z z76@>p_1_#@YinztII|mF>F+W*pBa%%^gEE@>GNu7d3ZZj@i}eyWm-Ub<3}SYd~{f; zzN&n{tEg&9`aaj3~H>|y#q+yM({<_5*o0G<7(%9tXFCZYVnS1Axnt5=4 z9P?UpQfnr)CNF=U7PWIrX0)xHH1x$E}eZ-Z5eARI!m4zNqOb9G`x9- HHH-T%5r9=L literal 0 HcmV?d00001 diff --git a/main/parser/migrations/__pycache__/__init__.cpython-311.pyc b/main/parser/migrations/__pycache__/__init__.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..40b64e41d0c3fdc6e71c3473c8f55f929b3dc6f8 GIT binary patch literal 223 zcmZ3^%ge<81om5hrGV(iAOZ#$p^VRLK*n^26oz01O-8?!3`I;p{%4Tn*L)zMA6lGR zRIHzrm|0R?CFT_uBo?LSC0FX_CT8a8135q=^>Z`RixNvR^Ye=J)=dU}j`w{J;PsikN|701=}>mjD0& literal 0 HcmV?d00001 diff --git a/main/parser/models.py b/main/parser/models.py new file mode 100644 index 0000000..3d6d3ec --- /dev/null +++ b/main/parser/models.py @@ -0,0 +1,11 @@ +from django.db import models + + +class Road(models.Model): + title = models.CharField(max_length=100) + image = models.ImageField(upload_to='') + title_text = models.CharField(max_length=100, null=True) + link = models.CharField(max_length=255, null=True) + + def __str__(self): + return self.title diff --git a/main/parser/parser.py b/main/parser/parser.py new file mode 100644 index 0000000..f5ead60 --- /dev/null +++ b/main/parser/parser.py @@ -0,0 +1,49 @@ +import requests +from bs4 import BeautifulSoup as BS +from django.views.decorators.csrf import csrf_exempt + +URL = 'https://www.krsu.edu.kg/' + +HEADERS = { + 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8', + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:107.0) Gecko/20100101 Firefox/107.0' +} + + +@csrf_exempt +def get_html(url, params=''): + req = requests.get(url, headers=HEADERS) + return req + + +@csrf_exempt +def get_data(html): + soup = BS(html, 'html.parser') + items = soup.find_all('div', class_='news-column-block') + movies = [] + + for item in items: + movies.append( + { + 'link': URL + item.find('a').get('href'), + 'title': URL + item.find('a').get('href'), + 'title_text': item.find('div', class_='views-field views-field-field-data-publikacii').find( + 'div').get_text(), + 'image': URL + item.find('div', class_='field-content news-img').find('img').get('src') + } + ) + return movies + + +@csrf_exempt +def parser(): + html = get_html(URL) + if html.status_code == 200: + movies1 = [] + + for page in range(0, 1): + html = get_html(f'https://www.krsu.edu.kg/', params=page) + movies1.extend(get_data(html.text)) + return movies1 + else: + raise Exception('Error in parser func........') \ No newline at end of file diff --git a/main/parser/serializers.py b/main/parser/serializers.py new file mode 100644 index 0000000..c1befab --- /dev/null +++ b/main/parser/serializers.py @@ -0,0 +1,9 @@ +from rest_framework import serializers + +from .models import Road + + +class RoadSerializer(serializers.ModelSerializer): + class Meta: + model = Road + fields = '__all__' diff --git a/main/parser/tests.py b/main/parser/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/main/parser/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/main/parser/urls.py b/main/parser/urls.py new file mode 100644 index 0000000..b6f7a06 --- /dev/null +++ b/main/parser/urls.py @@ -0,0 +1,9 @@ +from django.urls import path + +from .views import ParserItemListView, ParserView + + +urlpatterns = [ + path('list_parser/', ParserItemListView.as_view(), name='parser-list'), + path('create_parser/', ParserView.as_view(), name='parser-list_create'), +] diff --git a/main/parser/views.py b/main/parser/views.py new file mode 100644 index 0000000..8ca64bd --- /dev/null +++ b/main/parser/views.py @@ -0,0 +1,17 @@ +from rest_framework import generics, status +from rest_framework.response import Response +from bs4 import BeautifulSoup as BS + +from .models import Road +from .serializers import RoadSerializer + + +class ParserItemListView(generics.ListCreateAPIView): + queryset = Road.objects.all() + serializer_class = RoadSerializer + + +class ParserView(generics.CreateAPIView): + queryset = Road.objects.all() + serializer_class = RoadSerializer +