私はXpathを初めて使用し、以下の形式でWebサイトをスクレイプしようとしています。
<div class="top">
<a> tittle_name </a>
<div class="middle"> listed_date </div>
<div class="middle"> listed_value </div>
</div>
<div class="top">
<a> tittle_name </a>
<div class="middle"> listed_date </div>
</div>
<div class="top">
<a> tittle_name </a>
<div class="middle"> listed_value </div>
</div>
Listed_valueとlisted_dateの存在はオプションです。
各tittle_nameをそれぞれlisted_date、listed_value(使用可能な場合)でグループ化してから、リーチレコードをMySQLに挿入する必要があります。
私はスクレイプシェルを使用しています。
listings = hxs.select('//div[@class=\'top\']')
for listing in listings:
tittle_name = listing.select('/a//text()').extract()
date_values = listing.select('//div[@class=\'middle\']')
上記のコードは、tittle_nameのリストと利用可能なlisted_date、listed_valueのリストを示していますが、それらを一致させる方法は?(形式が対称ではないため、インデックスで移動することはできません)。
ありがとう。