티스토리 뷰

python lecture/project

[edu] Crawling

burningrizen 2018. 8. 29. 23:13

[Crawling 이란?]


크롤링이란 말 그대로 긁어 오다 라는 뜻이다.

웹에 있는 문서중에 원하는 내용만 긁어 오는 것을 말한다.


날씨나 쇼핑몰의 상품정보, 주식, 뉴스기사 등등

굉장히 유용하고 활용범위는 굉장히 넓다.





[HTML]


크롤링이란 말 그대로 긁어 오다 라는 뜻이다.

웹에 있는 문서중에 원하는 내용만 긁어 오는 것을 말한다.


날씨나 쇼핑몰의 상품정보, 주식, 뉴스기사 등등

굉장히 유용하고 활용범위는 굉장히 넓다.








import requests
from bs4 import BeautifulSoup


def get_html(url):
resp = requests.get(url)
return resp.text if resp.status_code == 200 else ""


def get_items(keyword):
url = "https://search.shopping.naver.com/search/all.nhn?query=" + keyword
html = get_html(url)
soup = BeautifulSoup(html, 'html.parser')
return soup.find("div",{"class": "search_list basis"}).find_all("a",{"class": "tit"})


def parser(items):
return [item["href"]+"\n"+item.text.strip() for item in items]


def out(items):
return "\n".join([item for item in items])


def request(keyword):
items = get_items(keyword)
items = parser(items)
return out(items)


if __name__ == "__main__":
print(request("롱패딩"))

댓글