본문 바로가기

Back-End9

장고 스크랩핑 자동 업데이트 오늘 할일 기존의 스크랩핑 파일을 aws의 ssh파일에서 동일하게 변경해주고, 스크래퍼가 주기적으로 실행되게 한다. 장고 스크랩트 배치 수행 설정 django_scraper/web_scraper에서 touch로 scraper_run.sh 파일 만들고, nano script_run.sh를 쳐서 파일에 들어감! nano 진입! #! /bin/bash cd /home/ubuntu/django_scraper/web_scraper /home/ubuntu/django_scraper/bot_venv38/bin/python manage.py runscript scraper 위 코드를 넣어준다! 이 후 cltr + o / cltr + x로 빠져나온다! (가상환경일 때는 interpriter의 절대 경로로 사용한다!) 스.. 2022. 12. 7.
장고 스크랩핑 구현 장고 앱 만들기 user.py 파일에 들어가서 앱을 등록해준다. settings.py에 들어가서 시간과 언어를 우리나라 기준으로 설정한다. 최종 scraper 파일 만든다. 위에서 Deal.objects.filter(link__iexact=link).count()은 중복을 방지하기 위해서 넣어 준 것이다. pip install django_extensions를 이용하여 모듈설치하고, python manage.py runscript scraper를 이용하여 프로젝트를 연결한다. 그리고 만약에 에러 발생하면 def run():함수로 정의하면 잘돌아간다! 이 후 다음과 같이 models에 들어가서 데이터 뼈대를 만든다.! index.html 파일을 만든다. css링크를 넣어주고, table을 만들어 넣어준다... 2022. 12. 6.
EC2 서버에서 장고 실행시키기! AWS에서 실행! 다음 경로로 들어간 다음 연결을 누른다! 이 후 내가 만든 프로젝트파일에 접근하고, 가상환경에 들어간다. source dj_venv/bin/activate 가상환경에 들어가는 방법은 리눅스에서는 다르다. aws에서 python manage.py runserver 0.0.0.0:8000을 입력하면 서버가 실행된 것을 볼 수 있다! cmder에서 aws 연동! cd user/playdata/.ssh들어가서 cat config해서 내 주소 복붙하기! 가상환경 안에서 실행햐야한다. 가상환경 접속 방법은 source dj_venv/bin/activate로 한다. 프로젝트 파일 만들고, 그 안에 들어가서 manage 파일 확인 후 migrate하고, 계정 만들고, ec2 서버 실행! 이 후 cat.. 2022. 12. 5.
장고 (기존 함수에서 클래스 형태로 전환, 로그인 후 글 작성, 리스트, 수정 삭제) FBV(함수형 뷰)를 CBV(클래스형 뷰)로 변환 뷰를 체계적으로 관리하기 위해 함수형 뷰에서 클래스 형뷰로 변환한다. CBV형으로 url을 다음처럼 수정한다. views.py는 class로 수정한다. 위 코드에서 상속하는 것은 부모 클래스인 CreateView 클래스의 form valid()를 호출한다. 즉, 상위 클래스의 form_valid() 메서드에 의해 form.save()를 실행하고, success_url로 리다이렉트 된다! 로그인된 사람만 글 작성하도록 구현 데이터 모델을 수정한다! 데이터 모델을 수정한 경우는 python manage.py makemigration 과 python migrate를 해줘야 한다. 글을 추가,삭제,변경에 관한 url도 추가해준다! 글을 작성하는 Form view.. 2022. 12. 2.
장고 (데이터 중복 처리 기능 / 이미지 넣기 / footer 하단 고정 / 로그인, 회원가입, 로그아웃, 비밀번호) 구현 데이터 중복 방지 form.data.get은 폼에 입력값을 개별로 변수 대입하고, 값이 없으면 None! CountryData.objects.update_or_create를 사용하여 나라 데이터와 인구 수 데이터가 있으면 업데이트하고, 없으면 값을 채워넣는다. 결과! 업데이트 확인된다! 이미지 넣기 django_tutorial > static 파일을 만든다. 유지보수를 위해서 다음과 같이 폴더를 3개 만든다! 이 후 index.html에 들어가 이미지 경로를 지정해준다. 여기서 alt는 이미지가 안나올 때 나오는 텍스트이다. 결과!!! js를 통한 footer 조절하기! 네이게이션높이와 컨텐츠 높이와 footer의 높이를 더한 것이 전체 윈도우 창보다 크면 footer의 fixed-bottom을 제거한다.. 2022. 12. 1.
장고 데이터 시각화 (dashboard) 오늘은 장고 dashboard앱을 추가하고, 시각화를 하였다. Dashboard 앱 추가 python manage.py startapp dashboard를 이용해서 앱을 추가한다. 이 후 ls를 활용하여 dashboard가 추가되었는지 확인한다. 대시보드를 settings에서 추가한다. 유지보수를 쉽게 하기 위해 html파일에 분산한다. base.html 파일은 공통적으로 html파일이 겹치는 분을 따로 모아두었다. 주의해야할 점으로는 script는 항상 밑에 두는 것이 좋다! navbar를 자연스럽게 만들기 위해 container로 감싸서 가운데로 보기 좋게 만들었고, 바깥에 bg-light를 주어 나머지 남는부분을 동일한 색으로 채워넣었다. footer는 페이지 하단을 나타내는 파일로 스타트부트스트랩.. 2022. 11. 30.
728x90