3주차 웹개발 강의는
Python과 MongoDB를 다루는 연습을 했습니다.
Python으로 코드를 쳐서 MongoDB에 데이타를 업데이트했습니다.
처음에 MongoDB에 업데이트가 안되고 계속 오류가 났었습니다.
[SSL: CERTIFICATE_VERIFY_FAILED]
이런 오류가 났었는데
열심히 구글링한 결과
certifi라는 패키지를 설치하고
from pymongo import MongoClient
import certifi
ca = certifi.where();
client = MongoClient('내MongoDB주소', tlsCAFile=ca)
db = client.dbsparta
위의 코드를 삽입하니 실행이 되었습니다.
뭐가 틀렸는지 눈빠지게 보다가 선생님과 다른 코드는 없는 걸로 확인하고 뒤늦게 구글링해서 오류의 원인을 찾아냈습니다.
모니터 받힘대와 무선 키보드를 구매해야할 것 같습니다.
일단 새로운 맥북은 핑핑 잘돌아갑니다.
249만원 짜리 맥북을 위한 케이스도 사야겠습니다.
벌써 매몰비용만 600만원이 넘어갑니다.
거의 국내대학 한학기 등록금.
아직까지 수업은 흥미롭고 재미있습니다.
아래는 3주차 과제로 진행한 지니 뮤직 차트 크롤링하는 코드입니다.
카피 하고 싶은 부분에 대고
검사 > copy > copy selector
soup.select('')를 이용해서 크롤링을 해옵니다.
import requests
from bs4 import BeautifulSoup
headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}
data = requests.get('https://www.genie.co.kr/chart/top200?ditc=M&rtm=N&ymd=20210701',headers=headers)
soup = BeautifulSoup(data.text, 'html.parser')
#body-content > div.newest-list > div > table > tbody > tr:nth-child(1) > td.number
#body-content > div.newest-list > div > table > tbody > tr:nth-child(1) > td.info > a.title.ellipsis
#body-content > div.newest-list > div > table > tbody > tr:nth-child(1) > td.info > a.artist.ellipsis
music = soup.select('#body-content > div.newest-list > div > table > tbody > tr')
for genie in music:
rank = genie.select_one('td.number').text[0:2].strip()
title = genie.select_one('td.info > a.title.ellipsis').text.strip()
artist = genie.select_one('td.info > a.artist.ellipsis').text.strip()
print(rank, title, artist)
'사전스터디_부트캠프' 카테고리의 다른 글
2회차 웹개발 종합반 1주차 css html JavaScript (0) | 2022.10.18 |
---|---|
비전공자 개발자 도전기 5주차 웹개발 서버연결하기 (0) | 2022.10.18 |
비전공자 개발자 도전기 4주차 웹개발 "GET" "POST" (0) | 2022.10.14 |
비전공자 개발자 도전기 2주차 웹개발 (0) | 2022.10.09 |
비전공자 개발자 도전기 1주차 웹개발 (1) | 2022.10.08 |