21.11.03 항해99 4기 3일차
db = client.bestseller
# 교보문고 베스트셀러 url에서 책의 제목, 저자, 출판사, 발간 날짜, 이미지 정보를 가져오고 bestseller 콜렉션에 저장
def insert_bookinfo():
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('http://www.kyobobook.co.kr/bestSellerNew/bestseller.laf?orderClick=d79', headers=headers)
soup = BeautifulSoup(data.text, 'html.parser')
lis = soup.select('#main_contents > ul > li')
for li in lis:
image_url = li.select_one('div.cover > a > img')['src']
title = li.select_one('div.detail > div.title > a > strong').text
if title is not None:
stat = li.select_one('div.detail > div.author')
stat_temps = stat.text.split()
author = ""
publish = ""
publish_date = ""
flag = 0
for stat_temp in stat_temps:
if stat_temp == "|":
flag += 1
elif stat_temp == "저자" or stat_temp == "더보기":
pass
else:
if flag == 0:
author += stat_temp + " "
elif flag == 1:
publish += stat_temp + " "
else:
publish_date += stat_temp + " "
doc = {
'title': title,
'author': author,
'publish_date': publish_date,
'publish': publish,
'image_url': image_url
}
db.bestseller.insert_one(doc)
# 기존 bestseller 콜렉션을 삭제 후, 크롤링하여 DB에 저장
def insert_all():
db.bestseller.drop() # bestseller 실시간 최신화를 위해 콜렉션 삭제
insert_bookinfo() # 크롤링하여 DB에 저장
# 실행하기
insert_all()
ajax랑 jquery공부
항해99 4기 시작 전, 사전준비기간 때 했었는데 보충이 필요하다고 생각되어서 필요한 부분만 인강듣고 개인적으로 공부를 다시 했습니다.
git과 sourcetree
아직 익숙하지 않은 툴이라서 그런가 팀원 모두 다같이 사용해보려고 하는데 하나로 합쳐서 재배포하는데 너무 오래걸립니다.
각자 맡은 파트 진행함에 있어서 브랜치 만들고 하다가, 나중에 합병할 때 문제가 발생해서 합치는데 너무 힘들었습니다. 뭔 충돌은 계속나고 브랜치 그래프 모양도 제각각이고.. 결국 어찌저찌 되긴했습니다. 생활코딩 강의가 도움이 많이 되었습니다.
항해 시작전에는 매일 8시간 9시간씩 자다가 3일연속 4시간정도만 잤더니 눈이 오지게 건조하고 커피없으면 코딩하다가 기절할 것 같습니다.
근데 이렇게 해도 시간이 모자랍니다. 모르는 것이 너무 많다보니 배울 것도 많은데 익힐시간도 필요해요. 익숙해지는 건 당연히 멀었고..
지난 2년동안 ncs 문제집만 풀다가 코딩하려니까 만만치 않네요. 그래도 조금씩 느는 것 같아 기분은 좋습니다.
내일도 파이팅