EDA 웹데이터2

HA_·2023년 11월 26일
0

(4) delete_tag()

html 태그를 제거하는 'delete_tag'함수를 생성

제목 하나하나를 읽고, html 태그가 있으면 떼는 기능을 담아줄 것이다.
html 태그가 있으면 떼주는 기능을 하는 'delete_tag'함수를 생성한다.

def delete_tag(input_str):
    input_str = input_str.replace("<b>", "")
    input_str = input_str.replace("</b>", "")
    return input_str

태그가 열리고 닫히기 때문에 태그 제거하는 코드를 두 번 써준다.

생성한 함수에 one_result 데이터 프레임 넣어서 실행

delete_tag(태그 제거하는 함수)를 적용하기 위해 위에 코드를 복사해 온다.

import pandas as pd

def get_fields(json_data):
    title = [delete_tag(each["title"]) for each in json_data["items"]]
    link = [each["link"] for each in json_data["items"]]
    lprice = [each["lprice"] for each in json_data["items"]]
    mall_name = [each["mallName"] for each in json_data["items"]]
    
    result_pd = pd.DataFrame({
        "title": title,
        "link": link,
        "lprice":lprice,
        "mall":mall_name,
    }, columns=["title", "lprice", "link", "mall"])
    return result_pd

코드 설명:

  • "json_data"라는 이름 안에서 "items"에서 "each"라는 변수 안에 하나씩 가져와라
  • "each["title"]" => each는 "title"을 가져와서 리스트에 하나씩 저장을 해라
get_fields(one_result)


html 태그가 제거된 것을 볼 수 있다.

"shop"(쇼핑몰)에서 검색어가 "몰스킨"이고, 첫 페이지부터고 보여주는 5(다섯)페이지의 정보를 보여주느 데이터 프레임 생성하기

url = gen_search_url("shop", "몰스킨", 1, 10)
json_result = get_result_onpage(url)
pd_result = get_fields(json_result)

코드 설명:

  • "shop"(쇼핑몰)에다가 데이터를 요청하고, 검색어는 "몰스킨", 첫 페이지부터고, 보여주는 페이지는 5(다섯)페이지
  • json 파일 형태로 응답을 받고, 위에 url로 요청한다.
  • 위에 url로 요청한 걸로, pd_result라는 거에 get_fields를 넣어서 데이터프레임으로 만든다.
pd_result

0개의 댓글