こちら↓のサイトで紹介されている本を買い勉強しています。
https://hiroronn.hatenablog.jp/entry/20180511/1526044297
本は「Pythonによるクローラー&スクレイピング入門 設計・開発から収集データの解析・運用まで」
下記のサンプルプログラムをそのまま実行してもエラーになります。
エラー
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list index out of range
存在しないインデックを指定した、ということだと思うのですが、
h1要素はあります。
python3.6 、Ubuntu18.04です。
なぜエラーになっているのか教えていただけると幸いです。
ソースコード
import requests import lxml.html # HTMLソースを得る r = requests.get("http://www.shoeisha.co.jp/book/detail/9784798146072") html = r.text # HTMLをHtmlElementオブジェクトにする root = lxml.html.fromstring(html) # XPathを指定して該当する要素のリストを得る titleH1 = root.xpath("/html/body/div[1]/section/h1") # リストの1番目のテキストを表示する print(titleH1[0].text) # CSSセレクターで該当する要素のリストを得る qaA = root.cssselect("#qa > p > a") ## forループで回して取得した要素のhref要素を表示する for aTag in qaA: print(aTag.attrib["href"])
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/09/28 05:40