일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- gpu 병렬처리
- DB
- 코딩
- pymongo
- 구글 드라이브
- G-Suite
- Django
- Google Drive
- nocookie
- 단축어
- 탐욕 알고리즘
- 추천 영상
- docker-compose
- 바로학교
- venv
- 파이썬
- 충북
- MongoDB
- 유튜브
- 그리디 알고리즘
- 아이폰
- 알고리즘
- flask
- 장고
- List
- selenium
- 리스트
- python
- 링크
- 깃허브
- Today
- Total
목록분류 전체보기 (71)
SSAMKO의 개발 이야기
Django를 API서버로만 이용할 때, 외부 사용자들에게 header를 통해 인증정보를 받아야 할 경우가 있다. 이때, Test코드에서도 이를 처리해야 하는데, TestCase의 client에서 요청을 보낼때, from django.urls import reverse from django.test import TestCase class AircodeAPITests(TestCase): def test_schedule(self): url = reverse("send_schedule") header = {'HTTP_TOKEN':'afaew$@m#iow23!3@29fafewm@*'} response = self.client.post(url, **header) 위와 같이 client.post() 혹은 clien..
Django를 이용해 백엔드 서버를 구성할 때, 큰 장점 중 하나인 테스트 코드 작성에 대해 알아보겠습니다. 테스트 코드를 작성하면, 사람이 손으로 직접 테스트를 하는 것보다 훨씬 빠르고, 정확하게 테스트를 진행할 수 있습니다. django에서는 이 작업을 편리하게 도와주는 Test도구들이 있습니다. 이 중에서 TestCase를 사용해 간단히 API Test를 위한 코드를 작성해보겠습니다. 먼저, django app을 만들면 자동 생성되는 tests.py를 삭제하거나 이름을 변경해줍니다. model, form, views 등을 각각 테스트할 수 있도록, test_model, test_form, test_views 처럼 각각의 파일을 만들어줍니다. 이는 각각의 테스트 코드를 별도로 작성하고, 진행할 수 있..
1. settings > Allowed Host settings.py 에서 ALLOWED_HOSTS = ['*'] ALLOWED_HOSTS = ['*'] pip freeze > requirements.txt 2. 파일 배포 git clone scp ftp 3. venv python3 -m venv source venv/bin/activate 4. pip install -r requirement 5. GCP 방화벽 2021/01/11 - [GCP, AWS] - [GCP] 방화벽 규칙 만들기 6. ubuntu firewall - ufw 아래 커맨드를 이용해 8000포트를 개방한다. sudo ufw allow 8000/tcp 개방되었는지 확인하기 위해 아래 커맨드를 사용한다. sudo ufw status ve..
1. 가상환경 실행 2. pip install gunicorn 3. manage.py가 있는 폴더로 이동 4. gunicorn 설정 gunicorn --bind 0.0.0.0:8000 myProject.wsgi:application myProject에는 본인의 project이름을 넣는다. 스크립트 생성 /etc/systemd/system/gunicorn.service [Unit] Description=gunicorn After=network.target [Service] User= Group=www-data WorkingDirectory=/path/to/yourProject ExecStart=/path/to/yourProject/venv/bin/gunicorn \ --workers 3 \ --bind u..
아이패드 LTE요금제로 LG U+를 사용하다가 아이패드를 잘 들고다니지 않아 해지를 하려고 했더니 몹시 불편하여 그 과정을 포스팅하기로 했다. 일단 총평을 먼저 말하자면, 다들 예상하시겠지만 최악의 서비스 '해지 방법'을 안내받으려면 일단, 모바일에서는 안된다. 데스크톱 웹으로 접속해야하는데, 뭐 하나 제대로 되는게 없다. 비밀번호를 변경하라그래서 변경하려고 했더니 몇 번의 연결 끝에 겨우 비밀번호 변경을 끝내고, 메뉴에서 찾아내 들어갔더니, 세상에... 다른건 다 웹에서 할 수 있게 해놓고, 해지는 1. 신청서를 다운받아서, 2. 출력을 하고, 3. 수기로 작성해서, 4. 팩스로 보내야 한다. 심지어 팩스가 잘 안 오는 경우도 있으니 1~2일이 지나도 연락이 없으면 확인 전화를 하란다. 이 글을 쓰는 ..
이름은 django, flask 등 편한대로 넣고, 아래 세 항목에 주의하여 넣어주시면 됩니다. 이 글을 보고 계신 초보/개인 사용자라면 나머지는 건드리지 않으셔도 됩니다. 주의하셔야 할 부분은 IP범위에서 /0 까지 붙여주셔야 한다는 것입니다. 방화벽 규칙 추가가 완료되었으면, 해당 방화벽 규칙을 적용할 vm에 해당 규칙의 태그를 넣어줍니다.
Google에서는 인공지능을 활용한 다양한 API를 제공하고 있는데, 매력적인 점은 개인적으로 사용할때는 대부분의 AI를 무료로 사용할 수 있다는 것이다. (개인사용자에게 무료로 제공하는 것은 아니고, 무료로 사용할 수 있는 일 할당량 혹은 월 할당량이 존재함) 그중에서 이미지에서 텍스트를 추출할 수 있는 API의 사용법을 알아보자. 필자는 쇼핑몰 상세이미지에서 텍스트를 추출하기 위해 사용했었는데, 퀄리티가 정말 매우매우 높다. 한글의 정확도도 99%정도로 매우 정확하고, 언어를 알아서 감지해주므로 다양한 언어가 있더라도 문제가 없다. 사용 예시 위 이미지에서 텍스트를 추출하면 고급스러운 합성가죽 고급스러움이 느껴지는 가죽으로 이물질이 묻어도 쉽게 제거가 가능하며, 정교한 박음질로 마감처리 되었습니다. ..
python에서 다른 폴더, 특히 상위폴더에 작성한 module 혹은 pacakge를 import할 때, 경로 문제가 자주 발생한다. 해당 스크립트를 직접 실행시킬때, package를 아래처럼 import해줄 수 있다. if __name__ == '__main__': if __package__ is None: import sys from os import path sys.path.append(path.dirname(path.dirname(path.abspath(__file__)))) from airtrack_banner import Banner else: from ..airtrack_banner import Banner