파이썬 입문
•
배운점:
◦
함수, 변수, 조건문, 반복문 등이 Python에선 어떻게 표현되는지 기초 문법을 사용
◦
주의해야 될 것은 함수는 def라는 명칭으로 시작하고 ' : ' 콜론을 사용한다. 또한 실행될 함수 내용은 ' ' 탭 빈공간으로 열맞춤이 꼭 맞춰줘야 한다는 점
◦
가상환경 venv 구축법(python3 -m venv .venv)
◦
venv내 라이브러리 설치법 (pip install xxx)
◦
라이브러리 임포트(import xxx)
◦
requests 라이브러리 사용해보기(js fetch와 비슷한 역할) 데이터 가져오기 (data = requests.get(’link’)
◦
크롤링에서 **BeautifulSoup 라이브러리 사용해보기(**우리가 원하는 특정 부분 을 빠르고 쉽게 필터링 해주는 라이브러리)
◦
soup의 select()를 통해 원하는 데이터 스코프를 지정
•
어려운 점:
◦
Java, JavaScript랑 햇갈림 주의!
◦
requests, bs 라이브러리들의 기능중에 유용한 것들은 무엇이 있을까?
◦
크롤링 코드에서 headers/data/soup 부분은 무엇을 의미하는지 추가 공부가 필요하다.
MongoDB 입문
•
배운점:
◦
클라우드 서비스인 MongoDB Atlas 가입
◦
Python에서 웹에 있는 MongoDB를 조작 환경구축
▪
dnspython라이브러리 설치
•
pip install dnspython
▪
pymongo라이브러리 설치
•
pip install pymysql
◦
pymongo 를 사용해서 DB에 접속Atlas에 들어가서 준비해둔 DB에서 Connection string을 URL에 입력
◦
from pymongo import MongoClient client = MongoClient('여기에 URL 입력') db = client.dbsparta
◦
certifi 라이브러리 필요(os마다다름)
▪
SSL: CERTIFICATE_VERIFY_FAILED 에러 해결 35번 블로그 참고
◦
파이썬에서 MongoDB를 사용하면서 CRUD기능의 SQL문을 사용하는 것을 실습
◦
```python # INSERT_ONE # 저장 - 예시 # doc = {'name':'bobby','age':21} # db.users.insert_one(doc) ``` ```python # READ(FIND_ONE) # 한 개 찾기 - 예시 # user = db.users.find_one({'name':'bobby'}) # print(user) ``` ```python # READ(FIND) # 여러개 찾기 - 예시 ( _id 값은 제외하고 출력) # all_users = list(db.users.find({},{'_id':False})) # for a in all_users: # print(a) ``` ```python # UPDATE # 바꾸기 - 예시 # db.users.update_one({'name':'bobby'},{'$set':{'age':19}}) ``` ```python # DELETE # 지우기 - 예시 # db.users.delete_one({'name':'bobby'}) ```
◦
웹 크롤링 데이터를 DB와 연결하여 넣기, 찾기, 수정하기
•
어려운 점:
◦
Python에서는 줄바꿈(탭)을 유의해야 하는구나
◦
크롤링 할 때 계층 구조를 정확히 이해하면서 원하는 데이터가 어디 있는지 파악
"Genie" 지니 음악 차트 데이터 크롤링
•
배운점:
◦
최대한 안보고 어떤 코드가 필요한지 해보자
◦
라이브러리 임포트와 HTML 크롤링
▪
웹 크롤링을 위해서 requests를
▪
받아온 html 소스를 parsing(문자열들을 분석/분해/구조화/가공 해주는 프로세스)해줄 수 있는 beautifulsoup을
◦
원하는 데이터 가져오기(1개부터)
◦
파이썬 문자열 추출(슬라이싱) Slicing 콜론 [ : ] 사용
◦
select() 함수는 발견한 모든 엘리먼트를 리스트 형식으로 반환
•
어려운 점:
◦
반복문의 다른 예제들을 실습해서 더 이해해야 한다.
▪
객체 내 접근하는 점표기법과 혼동하지말자.