0
「id」とアンカータグに対応する値を取得したいと思います。idに対応する値を取得する方法
<li id="1" class="list">
<a class="tim">This is Link1</a>
<li id="2" class="list">
<a class="tim">This is Link2</a>
<li id="3" class="list">
<a class="tim">This is Link3</a>
私は以下のコードで試してみました:
from scrapy.http import HtmlResponse
response = HtmlResponse(url="some url", body=htmltext, encoding='utf8')
for x in response.css('li::attr(id)').extract():
item = {}
item['id'] = x
item['value'] = x.css('a.tim::text').extract()
が、それは私の最後の行のためのAttributeError: 'unicode' object has no attribute 'css'
を提供します。
>>> response.css('li::attr(id)').extract()
['1', '2', '3']
は、ループを展開しないでください、あなたはli
要素(ない属性)を選択する必要があり、その後、ループ:
ここでどのようなタイプのオブジェクトが「応答」ですか?あなたは図書館を使用していますか?その図書館は何ですか? –
私は治療リクエスト – michael
を使用しています。質問に[mcve]の何かを追加しようとしました。実際に問題を再現して助けてくれます。 *質問するときは、文脈が重要です。 –