【发布时间】:2016-03-05 19:49:16
【问题描述】:
我正在使用此代码。最后两个值是这样的,因为我正在测试它们中的任何一个是否会起作用 - 但它们不会。
def parse_again(self, response):
sel = Selector(response)
meta = sel.xpath('//div[@class="LWimg"]')
items = []
for m in meta:
item = PageItem()
item['link'] = response.url
item['Stake'] = m.select('//div[@class="stakedLW"]/h1/text()').extract()
item['Value'] = m.select('//p[@class="value"]/text()').extract()
item['Value'] = m.select('//div[@class="value"]/span/span/text()').extract()
items.append(item)
return items
从这个 html 源代码中检索数据
<div class="LWimg">
<div class="stakedLW">
<span class="title">Stake</span>
<span class="value">5.00</span>
<span class="currency">€</span>
我的items.py 看起来像这样
from scrapy.item import Item, Field
class Page(Item):
Stake = Field()
Value = Field()
问题是没有检索到数据,即最终没有任何内容保存到.csv。
欢迎任何意见。
【问题讨论】:
-
您在 html 中没有
<p class="value">或<div class="value">,因此您无法获得p[@class="value"]或div[@class="value"]。试试//span[@class="value"]/text() -
它不起作用...我的意思是我在 file.csv 中没有得到任何结果
-
编辑问题并添加 URL。
-
@eLRuLL 为什么你认为这适合 Code Review?不是,因为它是损坏的代码。
-
好吧,我唯一的问题是数据没有保存到 .csv 文件中。虽然,这里似乎没有人能够解决这个问题,所以我不得不尝试其他方法和不同的代码,直到我找到问题所在。至于学习python和scrapy,如果我知道这门语言,我就不会在这里向任何人寻求帮助。这就是我最终决定在这里注册并希望能从知道它的人那里得到帮助的原因之一,因为我使用谷歌几天都无法解决它。很明显,我是新手。如果不是,我希望现在是。 @eLRuLL