擅长:python、mysql、java
<p>你的选择器循环有点混乱。你知道吗</p>
<p>在这里,您可以循环浏览未排序的列表,其中每个年龄段只有一个:</p>
<pre><code>for sel in response.xpath('//ul[@class="dealerList__container"]'):
</code></pre>
<p>您要做的是遍历所有列表项:</p>
<pre><code>for sel in response.xpath('//li[@class="dealerList__itemContainer"]'):
</code></pre>
<p>如果以这种方式循环,则可以获得每个列表项的名称、地址:</p>
<pre><code>for sel in response.xpath('//li[@class="dealerList__itemContainer"]'):
names = sel.xpath('.//*[@itemprop="legalName"]/text() ').extract()
names = [name.strip() for name in names]
addresses = sel.xpath('.//article/a/div/p[@itemprop="address"]/text()').extract()
addresses = [address.strip() for address in addresses]
carss = sel.xpath('.//article/a/div/p[@class="dealerList__itemCount"]/span/text()').extract()
carss = [cars.strip() for cars in carss]
item = AutotraderItem()
item['name'] = name
item['address'] = address
item['cars'] = cars
yield item
</code></pre>