강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

kwonokun님의 프로필 이미지
kwonokun

작성한 질문수

파이썬 입문 및 웹 크롤링을 활용한 다양한 자동화 어플리케이션 제작하기

BeautifulSoup 사용법 및 간단 웹 파싱 기초(2)

2-6-2_new 질문

작성

·

185

0

아래와 같이 복사 해서 실행하였는데

결과는 에러가 나옵니다. 도와 주세요..

< html >

< body >

< div id = " foods " >

< h1 > 안주 및 주류

< ul id = " fd-list " >

< li class = " food hot " data-lo = " ko " > 닭 도리탕

< li class = " food " data-lo = " jp " > 돈까스

< li class = " food hot " data-lo = " ko " > 삼겹살

< li class = " food " data-lo = " us " > 스테이크

< ul id = " ac-list " >

< li class = " alcohol " data-lo = " ko " > 소주

< li class = " alcohol " data-lo = " us " > 맥주

< li class = " alcohol " data-lo = " ko " > 막걸리

< li class = " alcohol high " data-lo = " cn " > 양주

< li class = " alcohol " data-lo = " ko " > 동동주

Traceback (most recent call last):

File "/Users/Apple/section2/download2-6-2.py", line 14, in

print("1", soup.select("li:nth-of-type(4)")[1].string) #각 li 태그 그룹의 4번째 요소 선택

IndexError: list index out of range

[Finished in 0.659s]

첨부 파일 복사본

from bs4 import BeautifulSoup

import sys

import io

sys.stdout = io.TextIOWrapper(sys.stdout.detach(), encoding = 'utf-8')

sys.stderr = io.TextIOWrapper(sys.stderr.detach(), encoding = 'utf-8')

fp = open("food-list.html",encoding="utf-8")

soup = BeautifulSoup(fp, "html.parser")

print(soup)

print("1", soup.select("li:nth-of-type(4)")[1].string) #각 li 태그 그룹의 4번째 요소 선택

print("2", soup.select_one("#ac-list > li:nth-of-type(4)").string)

print("3", soup.select("#ac-list > li[data-lo='cn']")[0].string)

print("4", soup.select("#ac-list > li.alcohol.high")[0].string)

param = {"data-lo": "cn", "class": "alcohol"}

print("5", soup.find("li", param).string)

print("6", soup.find(id="ac-list").find("li",param).string)

for ac in soup.find_all("li"):

if ac['data-lo'] == 'us':

print('data-lo == us', ac.string)

답변 1

0

좋은사람님의 프로필 이미지
좋은사람
지식공유자

안녕하세요. 오근님

해당 2-6-2는 오류가 나는 것이 맞습니다.

https://github.com/eunki7/python_create_app_1/blob/master/section2/2-6-2_new_1.py

수정 후 새로운 파일을 업로드 한 상태입니다.

링크 가셔서 확인하시면 실행됩니다.

감사합니다.

kwonokun님의 프로필 이미지
kwonokun

작성한 질문수

질문하기