본문 바로가기

알아두면쓸데있는신기한잡학사전/고군분투흔적들34

[Project] 장고 프로젝트 생성 1. 장고 프로젝트 생성 다음 명령어들을 입력하여 장고 프로젝트를 생성한다. 명령어 입력 1) 최신의 pip로 update하는 명령어이다. pip : 파이썬을 설치하면 깔린다. : 다운로드를 받을 수 있게끔 해주는 앱스토어 같은 아이이다. root@goorm:/workspace/jejucoding# pip install --upgrade pip 2) mkdir라는 폴더를 만든다. mkdir : 디렉토리를 만들어주는 명령어 root@goorm:/workspace/jejucoding# mkdir mystie 3) 앞서 만든 mysite라는 폴더로 이동한다. cd : change directory 명령어로, 말그대로 디렉토리를 이동하는 역할을 해주는 명령어 root@goorm:/workspace/jejucod.. 2022. 8. 29.
[Project] 장고의 구조와 MVT 패턴 장고란? Django는 파이썬 Web Framework 중 가장 사랑받는 Full-Stack Framework로 인스타그램, NASA, 우리가 사용할 댓글 관리 서비스인 Disqus 등에서 사용하고 있다. Full-Stack-Framework는 웹 서비스 개발에 필요한 모든 요소들이 한 곳에 모여있는 종합선물세트이다. 장고의 구조와 MTV 패턴 아래 그림은 간단히 만들어 볼 Django 폴더의 구성트리이다. 수정하는 순서는 url.py > views.py > index.html 순이다. main이라는 앱을 만들 것 Settings에서 설치되어 있는 앱 목록에 main 추가 main 추가 작업을 하지 않으면 앱이 구동하지 않는다. 여러 개의 앱을 만들 경우 모두 Settings에 등록한다. url.py에서.. 2022. 8. 29.
[Web] DB - MongoDB, pymongo DB의 종류 - RDBMS(SQL)은 행/열의 생김새가 정해진 엑셀에 데이터를 저장하는 것과 유사하다. 데이터 50만개가 적재된 상태에서, 갑자기 중간에 열을 하나 더하기는 어렵지만, 정형화되어있는 만큼 데이터가 일관적이고 분석에 용이하다. MS-SQL, My-SQL등이 여기 속한다. - NoSQL은 딕셔너리 형태로 데이터를 저장해두는 DB이다. 데이터 하나하나마다 같은 필드 값들을 가질 필요가 없어 자유로운 형태의 데이터 적재에 유리한 대신, 일관성이 부족할 수 있다. MongoDB가 이에 속한다. MongoDB => MongoDB는 다양한 플랫폼에서 사용할 수 있는 NoSQL 타입의 데이터베이스 프로그램으로, JSON과 비슷한 형태로 자료를 정리한다. - MongoDB의 자료는 각각의 딕셔너리인 도큐.. 2022. 8. 22.
[Web] Python - 웹스크래핑 웹 스크래핑이란 : 웹 스크래핑(web scraping)은 웹 페이지에서 우리가 원하는 부분의 데이터를 수집해오는 것을 뜻한다. - 한국에서는 같은 작업을 크롤링 crawling이라는 용어로 혼용해서 쓰는 경우가 많다. - 원래 크롤링은 자동화하여 주기적으로 웹 상에서 페이지들을 돌아다니며 분류/색인하고 업데이트된 부분을 찾는 등의 일을 하는 것을 뜻한다. - 구글 검색을 할 때는 web scraping으로 검색해야 우리가 배우는 페이지 추출에 대한 결과가 나올 것이다. 웹 스크래핑 해보기 - 네이버 영화 순위 페이지에서 영화 제목들을 스크래핑해볼 것이다. 링크: https://movie.naver.com/movie/sdb/rank/rmovie.nhn?sel=pnt&date=20200303 1. 크롬 브.. 2022. 8. 22.
[Web] Python - BeautifulSoup, find와 select를 사용한 웹 스크래핑 웹 스크래핑이 머리로 잘 정리되지 않아 다시 천천히 정리한다는 마음으로 쓴 포스팅이다. 웹 스크래핑의 기본 프로세스는 대개 정해진 패턴이 있다. 따지고 보면 웹 스크래핑이라는 것은 웹페이지에서 자신이 원하는 데이터를 긁어오는 것이므로 비교적 정형화된 작업이다. 정형화된 작업은 정형화된 프로세스가 있으므로 이것을 정리해서 머리에 넣어 두는 것이 중요하다. 웹 스크래핑 코딩의 기본 프로세스 1. 대상 웹페이지를 파싱(Parsing by BeautifulSoup) (* 파싱이란 문자열데이터를 분석하고 분해하여 목적한 패턴에 맞게 문자열의 구조를 결정하는 것) 2. 파싱(Parsing)된 데이터 중에서 스크래핑하고자 하는 "전체 데이터"를 선택함 : 이때 find_all 또는 select 명령어를 사용하며 얻어.. 2022. 8. 22.
[Web] Python - python package 파이썬 패키지 파이썬 패키지(package) 설치하기 패키지는 모듈(일종의 기능들 묶음)을 모아 놓은 단위이고, 이런 패키지의 묶을을 라이브러리라고 한다. 1. 가상 환경(virtual environment)이란? => 같은 시스템에서 실행되는 다른 파이썬 응용 프로그램들의 동작에 영향을 주지 않기 위해, 파이썬 배포 패키지들을 설치하거나 업그레이드하는 것을 가능하게 하는 격리된 실행 환경 - 한 프로젝트에서 쓰는 패키지의 수는 다양하고, 서로 다른 프로젝트에서 요구하는 패키지의 목록이나 버전이 다를 수 있다. - 이렇게 요구사항이 다른 두 프로젝트를 한 컴퓨터에서 진행해야하는 상황에서 각 프로젝트마다 가상환경을 만들고 그 안에 필요한 패키지를 설치해주면 필요한 버전이 다르거나 두 패키지가 충돌을 일으키.. 2022. 8. 22.
[Web] Python - 기초 문법 파이썬이란 : 네덜란드의 프로그래머 Guido van Rossum이 '읽기 쉬운 코드'에 중점을 두어 개발한 프로그래밍 언어이다. - '읽기 쉽게' 만든 언어이기 때문에, 문법이 쉬어 초보자가 배우기 좋은 언어이다. - 무료/오픈소스로 운영되고 커뮤니티가 크기 때문에 자연어처리, 머신러닝 등 직접 구현하기 어려운 기능들도 다른 개발자의 라이브러리를 이용해 쉽게 코드를 작성할 수 있다. 파이썬 설치 : 컴퓨터는 010000011과 같은 신호만 알아들을 수 있으므로 사람이 쓰는 파이썬 문법으로 된 글을 0과 1로 된 신호로 변환해주어야 한다. 이 '번역 패키지'를 설치하는 과정이다. cmd 혹은 PowerShell 창에 python3을 입력해보고 python이 설치되어 있다면 다음과 같은 화면이 나올 것이다.. 2022. 8. 22.
[Web] 서버 - 클라이언트 통신 Web API Web API는 Web Application Programming Interface의 줄임말로, 서버에 요청을 보내고 응답을 받기 위해 정의된 명세를 뜻한다. 보통 API라고 하면 Web API를 의미한다. 서버/클라이언트/웹의 동작 개념 설명 [https://bo5mi.tistory.com/73] * 즉, 브라우저가 하는 일은 1) 요청을 보내고, 2) 받은 HTML 파일을 그려주는 일뿐이다. - 브라우저에 주소를 치고 엔터를 누르면 HTML 정보를 보내줬다! => 바로 이 주소가 API이다. 엔터를 치면 '요청'이 가고, 서버는 '응답'으로 HTML을 보내주는 것이다. - API에서 응답으로 HTML 전체가 아니라 데이터만 따로 정리해서 보내줄 수도 있다. => 바로 JSON 형식이다... 2022. 8. 22.
[Web] FE - jQuery jQuery란? jQuery란, 웹 사이트에서 자바스크립트를 쉽게 활용할 수 있도록 도와주는 오픈소스 기반의 JavaScript 라이브러리이다. - JavaScript와 다른 특별한 소프트웨어가 아니라 미리 작성된 코드를 모아둔 것 - 직접 JS 코드를 작성하여 모든 기능을 구현할 수도 있지만, 이 경우에 코드가 복잡하고, 개발 환경과 다른 브라우저에서 잘 작동을 안 하는 등 브라우저 간 호환성을 직접 고려해야하는 등의 문제가 있기 때문에 전문 개발자가 작성한 라이브러리를 가져와서 사용하면 편하다. - 대신, 쓰기 전에 임포트(import)를 해주어야한다.!!!!! - jQuery와 순수 JavaScript의 코드를 비교해보면, JS에서 element란 id를 가진 요소를 감추려면 이렇게 길고 복잡하게 .. 2022. 8. 22.