无法访问来自 Xpath 的 Python 中的数组元素

Can not access array element in Python comming from Xpath

我正在尝试循环访问 python 中的数组:

# pull all shops into array
selectors = response.xpath('//div[@class="shop"]')
# cycle through all elements
for selector in selectors:

不知何故这不起作用,因为它总是访问第一个元素。手动查看 xpaths 我确实得到以下信息:

>>> selectors = response.xpath('//div[@class="shop"]')
>>> selectors[7].xpath('//a[@class="name"]/@href').extract_first()
'/redirect/id/22216/ppn/1100410330'

# direct access
>>> response.xpath('//div[@class="shop"][8]//a[@class="name"]/@href').extract_first()
'/redirect/id/31/ppn/1100410330'

直接访问元素(注8=7因0),我能获取到。只是循环通过它是行不通的。

它正确地循环了 n 次,但我总是得到第一个元素。

我猜你想要 selector.xpath('.//a[@class="name"]/@href').extract_first().