쇼핑몰 크롤링

Python / / 2020. 7. 8. 17:21
728x90
반응형

크롤링 사이트 : https://jolse.com 

 

JOLSE

Korean Cosmetics Online Beauty Shop

jolse.com

robots.txt

대상 페이지 선정

메뉴 : SKINCARE -> Moisturizer ->Toners & Mists

https://jolse.com/category/toners-mists/1019/

 

SKINCARE - Toners & Mists

Toners & Mists

jolse.com

제품 이름 찾기

더보기
import urllib.request
import bs4
url = "https://jolse.com/category/toners-mists/1019/"
html = urllib.request.urlopen(url)
bs_obj = bs4.BeautifulSoup(html, "html.parser")
ul = bs_obj.find("ul",{"class":"prdList grid4"})
description = ul.findAll("div",{"class":"description"})
for name in description:
    p_name = name.find("p",{"class":"name"})
    product_name = p_name.find("span")
    print(product_name)

[그림1] 제품 이름 찾기 예제 출력

span 제거하고 깔끔하게 출력

더보기
import urllib.request
import bs4
url = "https://jolse.com/category/toners-mists/1019/"
html = urllib.request.urlopen(url)
bs_obj = bs4.BeautifulSoup(html, "html.parser")
ul = bs_obj.find("ul",{"class":"prdList grid4"})
description = ul.findAll("div",{"class":"description"})
for name in description:
    p_name = name.findAll("span")
    print("{}".format(p_name[0].text))

[그림2] 제품 이름 찾기 span 제거 예제 출력

제품명, 정가, 세일가 찾기

더보기
# 쇼핑몰 삼품, 가격, 할인가격 찾기
# 쇼핑몰 상품 찾기
import urllib.request
import bs4
url = "https://jolse.com/category/toners-mists/1019/"
html = urllib.request.urlopen(url)
bs_obj = bs4.BeautifulSoup(html, "html.parser")
ul = bs_obj.find("ul",{"class":"prdList grid4"})
description = ul.findAll("div",{"class":"description"})
for name in description:
    p_name = name.findAll("span")
    if len(p_name) == 6:
        print("세일이 있는 상품 : {},{},{}".format(p_name[0].text,p_name[2].text,p_name[5].text))
    else:
        print("세일이 없는 상품 : {},{}".format(p_name[0].text, p_name[2].text))

[그림3] 제품명, 정가, 세일가격 찾는 예제 출력

728x90
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기