始める無料で始める

`href` をいただきました

前の演習では、クラス "course-block" を持つすべての div 要素の子であるハイパーリンク(a 要素)を選択するための CSS Locator 文字列を作成しました。ここでは、それらのハイパーリンクの子要素を選択して作成した SelectorListcourse_as としています。

次に、これらの要素から href 属性の値を抽出するために、以下の空欄を埋めてください。これは、前の演習で見た「チェーン」のもう一つの例です。

ここでのポイントは、cssxpath メソッドの呼び出しをチェーンして、組み合わせることができるということです。もし別の css メソッド呼び出しでチェーンする場合の解答は用意してあるので、正しい方向へ進めるはずです。

この演習はコースの一部です

Pythonで学ぶWebスクレイピング

コースを見る

演習の手順

  • 文字列 html をテキスト入力として使い、Selector オブジェクト sel を作成します。
  • 変数 hrefs_from_xpath に、course_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( ____ )
コードを編集して実行