시작하기무료로 시작하기

`href`에 걸렸네요

이전 연습 문제에서, 클래스가 "course-block"인 모든 div 요소의 하이퍼링크(a 요소) 자식을 선택하는 CSS Locator 문자열을 만들었어요. 여기서는 그 하이퍼링크 자식들을 선택해 만든 SelectorListcourse_as라고 부릅니다.

이제 아래의 빈칸을 채워서, 이 요소들에서 href 속성값을 추출해 보세요. 이것도 이전 연습 문제에서 본 것처럼 체이닝의 또 다른 예예요.

핵심은 cssxpath 메서드 호출을 서로 체이닝하고, 필요하면 함께 조합할 수 있다는 점입니다! 만약 css 메서드를 한 번 더 체이닝한다면 정답이 무엇인지 미리 알려 드려 방향을 잡을 수 있게 했어요.

이 연습은 강의의 일부입니다

Python으로 하는 웹 스크레이핑

강의 보기

연습 안내

  • 문자열 html을 텍스트 입력으로 사용해 Selector 객체 sel을 설정하세요.
  • 변수 hrefs_from_xpathcourse_as의 요소들에서 href 속성값을 담으세요. 여러분의 해답은 hrefs_from_css와 같아야 합니다!

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

from scrapy import Selector

# Create a selector object from a secret website
sel = Selector( ____ )

# Select all hyperlinks of div elements belonging to class "course-block"
course_as = sel.css( 'div.course-block > a' )

# Selecting all href attributes chaining with css
hrefs_from_css = course_as.css( '::attr(href)' )

# Selecting all href attributes chaining with xpath
hrefs_from_xpath = course_as.xpath( ____ )
코드 편집 및 실행