티스토리 뷰
들어가며...
pycharm을 통해 본격적으로 python을 배워보는 강의였다.
python을 배워본 적이 없었지만 이때까지 여러 언어를 해보았기 때문에 큰 거부감없이 익숙해질 수 있었던것 같다.
파이썬, 크롤링과 noSQL인 mongodb는 항상 보아왔던 키워드들이었기 때문에 기대가 됬었다.
배운것들
파이썬 및 개발 환경
인터프리트 언어로서 별도의 컴파일 과정이 없다. 인터프리터를 설치하여 실행만 해주면된다.
프로젝트 관리에서 신기했던게 있었다. 바로 가상환경이다.
보통 언어에서 프로젝트 관리 도구들이 하나씩 있는데, 예를 들어 java는 maven을 사용하고 nodejs는 npm을 사용한다.해당 도구들을 통해 프로젝트와 관련된 패키지들을 확인하고 설치할 수 있게된다.그런데 python은 pip라는 패키지 인스톨러가 있는데 해당 기능으로는 프로젝트별로 패키지 관리하는 것이 되지 않고 전역으로 패키지가 설치되기 떄문에 다른 프로젝트와 구별하여 패키지 관리가 되지 않는다.이로인해 나온것이 가상환경이고 venv(Virtual Environment) 폴더내에서 프로젝트내 패키지가 관리되게 되는 것이다.
그 다음은 언어 특성이다.별도의 타입을 명시하지 않고 들여쓰기를 통해 scope을 지정하였다.요새는 개발도구가 워낙 잘 되어있어 들여쓰기를 통해 scope 지정은 신속하고 직관적인 코드를 작성하는데 상당한 이점이 있는것 같다. (과거에는 힘들었을듯....) 그리고 type들이 있는데 처음에 헷갈렸던 부분은 dictionary 사용부분이다.아무래도 javascript를 많이 사용하다보니 object = dictionary로 생각하는게 익숙했는데, python은 class 객체와 dictionary가 구별되어 있어 접근 방식의 차이가 있다.
let obj = {name:'half'}
// javascript property 접근 방식 2가지
console.log(obj.name, obj['name'])
크롤링(Crawling)
많이 들어본 용어지만 이번에 처음으로 직접 해보았다.웹페이지에서 필요한 데이터를 가져오는 것으로 2가지가 필요했다.첫 번째 웹페이지에서 html을 가져오는것두 번째 html내에 요소에서 필요한 정보를 추출하는 것
위 두가지를 하기 위해서는 필요한 패키지 설치를 해야했다.
requests와 bs4(beautifulsoup)였다.
관련 패키지를 설치한 후 크롤링하여 원하는 데이터를 가져오는 것을 해보았는데, 해당 기능으로 할 수 있는것들은
많이 있을것같다.(특정 키워드에 관한 이미지 추출 등등)
mongoDB
관계형 데이터베이스만 쓰다가 noSQL을 쓰니 뭔가 새로운 느낌이었다.
구조를 작성하지 않고 그냥 테이블을 만들어서 데이터를 자유롭게 삽입할 수 있었기 때문이다.
여러 정보를 조사하다보니 대용량 데이터이며 복잡한 구조가 아닌 경우 noSQL을 통해 이점을 많이 볼 수 있다고 한다.
아직까진 많이 사용해보지 않아 추상적으로 이해하는 수준인데 추후에는 실제 사례와 같이 정리해보면 좋을것 같다.
mongoDB를 사용하기 위해서 설치를 해야하나 생각 했는데 강의에서 Cloud를 이용하여 DB에 접근을 하였다.
무료로 사용할 수 있게 Shared 클러스터를 생성할 수 있는데, 아마도 여러 사용자들이 자원을 함께 사용하는 것 같다.
어쨋든 무료로 클라우드를 사용할 수 있어 학습자에겐 매우 좋은것 같다.
마치며..
3주차 과제는 지니뮤직차트를 크롤링해 순위, 제목, 가수들을 추출하여 console에 출력해보는 과제였다.
이전 강의들을 따라했다면 크게 어렵지 않은 과제였는데, 그래도 스스로 크롤링을 할 수 있다는것 만으로 보람은 있었다.

'개발일지' 카테고리의 다른 글
[Sparta 4주차] 팬명록 완성하기 (0) | 2022.08.16 |
---|---|
스파르타 코딩(웹 개발 종합)[2주차] - 팬명록 과제, 공공데이터 조회 (0) | 2022.07.24 |
스파르타 코딩(웹 개발 종합)[1주차] - 스파르타피디아 (0) | 2022.07.22 |
- Total
- Today
- Yesterday
- 외래키 생성
- 1종 적성검사 국가건강검진
- Oracle Database 19c install
- 1종 적성검사 과태료
- 강서 운전면허 시험장
- postgresql 외래키
- 티스토리챌린지
- postgresql trigger
- epel repo
- oracle 19c 설치
- dockerignore
- rest api 조회 생성 수정 삭제
- express crud
- docker multi stage build
- postgresql on update current_timestamp
- rest api 단건 다건
- postgresql 트리거
- rest api crud
- 1종 적성검사
- 1종 적성검사 신체검사
- 외래키 인덱스 생성 구문 쿼리
- docker image 경량화
- postgresql 수정시간 자동 갱신
- unplugin-auto-import
- Oracle Database 19C 설치
- 스파르타 코딩클럽
- 외래키 삭제
- 오블완
- epel/x86_64
- mariadb 외래키 조회
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |