我试图遍历网站中的元素以从中创建项目。但是,循环返回每个项目的完整响应列表,而不是单个项目。
网站代码:
<div id="resultsList">
<div class="result">
<div ...>
<p><b><a href="...">
<spctc>CONTENT I</spctc>
</a></b></p>
</div>
</div>
<div class="result">
<div ...>
<p><b><a href="...">
<spctc>CONTENT II</spctc>
</a></b></p>
</div>
</div>
...
</div>
我的蜘蛛代码(我必须先登录,所以蜘蛛会先通过一些功能,然后再将登录的网站传递给scrape函数而不是parse函数):
def scrape(self, response):
for article in response.xpath('//div[@class="result"]'):
item = Article() # Creating a new Article object
item['title'] = article.xpath('//spctc/text()').extract()
print(item)
yield item
使用此代码,每个项目看起来都相同:
{'title': ['CONTENT I',
'CONTENT II', ...]}
我希望第一个项目为
{'title': ['CONTENT I']}
,第二项为
{'title': ['CONTENT II']}
等
答案 0 :(得分:0)
尝试遍历文章列表... article.xpath('// spctc / text()')
答案 1 :(得分:0)
item['title'] = article.xpath('.//spctc/text()').extract()
成功了