본문 바로가기

만들기/재고 검색 사이트

(4)
04. Requests를 향한 여정 사실 현재 올린 사이트에는 셀레니움을 쓰지 않아서 정리 글 내용에서 뺄까 했는데, K가 셀레니움도 정리해야 한다고 강력히 주장해서 같이 올린다. 셀레니움에 대한 정리보다는, 셀레니움을 리퀘스트로 대체하며 생겼던 에피소드를 적어보려 한다. Selenium VS Requests 처음 셀레니움을 쓸 때는 그저 신기했다. 파이썬 코드 몇 줄로 브라우저 창이 혼자 실행되고 클릭까지 되다니. 그저 재밌어 연습한답시고 다음, 네이버 자동 로그인 코드를 짰었다. 다음은 여기, 네이버 코드는 여기. 네이버는 너무 빠르게 넘어가면 봇으로 인식하고 캡챠가 떠서 좀 더 까다로웠다. 어쨌든, 우리가 올린 재고 사이트를 처음 코딩할 때는 셀레니움을 썼다. 그러나 웹에 올려보고 이건 아니다 싶어 리퀘스트로만 코드를 짰는데, 그 이..
03. 재고 크롤러(2) 앞의 글에서 이어지는 내용이다. 이번 글에서는 decompose와 for문에 대해 짧게 짚고 넘어가려 한다. 전체코드 def getStock(isbn): url = 'http://www.kyobobook.co.kr/prom/2013/general/StoreStockTable.jsp?barcode=' + isbn + '&ejkgb=KOR' res = requests.get(url) soup = BS(res.text, 'html.parser') # 비어있는 태그들 삭제 [x.decompose() for x in soup.findAll(lambda tag: (not tag.contents or len(tag.get_text(strip=True))
02. 재고 크롤러(1) 크롤링 서비스이니 만큼, 주 기능은 크롤링이다. 책 재고를 긁어오기 위해 두 가지가 필요하다 생각했다. 책에 관한 정보 해당 책 재고 책에 관한 정보 책에 관한 정보를 처음에는 네이버 책 페이지에서 받아왔는데, 찾아보니 API가 있었다. API는 크롤링보다 빠르고 간단하다...ㅎㅎ 이에 대한 내용은 다음에 API에 관한 글을 적으면서 다룰 예정이다. 책 재고 크롤링 이번 글의 주제인 크롤링. 재고를 긁어오기 위해 교보문고에서 재고를 올리는 URL을 확인했다. 살펴보니 책의 isbn을 이용해 재고를 확인하는 jsp 페이지로 접속이 가능했다. 아래 링크에서 **isbn**이라고 적힌 곳에 책의 isbn을 입력하면 접속 가능하다. http://www.kyobobook.co.kr/prom/2013/general..
01. https://neung.pythonanywhere.com Where is the Book? 참고사항 개발 진행 중입니다. 아직 CSS는 입히지 않았습니다. 건의 사항은 neungyoung.kim@gmail.com으로 보내주시면 감사하겠습니다. neung.pythonanywhere.com 아직 미완이긴 하지만 우선 사이트 링크부터. 여태껏 공부했던 내용들을 복습하고, 재정비할 겸 정리글을 올려볼 생각이다. K와 스터디를 시작하면서 파이썬으로 크롤링 사이트를 하나 올리는 걸 첫 목표로 잡았다. 크롤링은 웹을 공부하기에 좋았고, 둘 다 파이썬의 웹 프레임워크인 보틀을 이용해 서비스를 올려본 적이 있어 접근하기도 덜 부담스러웠다. 주제선정 막상 만들려니 크롤링 사이트 주제를 정하는 것부터 문제였다. 실생활에 ..