Python 使用scrapy我得到一个空项目

Python 使用scrapy我得到一个空项目,python,scrapy-spider,Python,Scrapy Spider,我想使用python和scrapy从网页上抓取一些信息,但是当我尝试这样做时,我的项目的输出是空的 首先,我和scrapy开始了一个新项目。然后,我在items.py文件中编写了以下内容: import scrapy class KakerlakeItem(scrapy.Item): info=scrapy.Field() pass 接下来,我在spider文件夹中创建了一个新文件,代码如下: import scrapy from kakerlake.items impor

我想使用python和scrapy从网页上抓取一些信息,但是当我尝试这样做时,我的项目的输出是空的

首先,我和scrapy开始了一个新项目。然后,我在items.py文件中编写了以下内容:

import scrapy

class KakerlakeItem(scrapy.Item):
    info=scrapy.Field()
    pass
接下来,我在spider文件夹中创建了一个新文件,代码如下:

import scrapy

from kakerlake.items import KakerlakeItem

class Kakerlakespider(scrapy.Spider):
    name='Coco'
    allowed_domains=['http://www.goeuro.es/']
    start_urls=['http://www.goeuro.es/search/NTYzY2U2Njk4YzA1ZDoyNzE2OTU4ODM=']

    def parse(self, response):
        item=KakerlakeItem()
        item['info']=response.xpath('//span[@class= "inline-b height-100"]/text()').extract()
        #yield item
        return item
我希望,通过在控制台中编写
scrapy crawl Coco-o data.json
,我可以得到我想要的东西,但不是这样,而是通过
{'info':[]}
获得json文件。也就是说,一个空项


我已经尝试了很多方法,但我不知道为什么它不能正常工作…

删除KakerlakeItem(scrapy.Item)中的pass

移除KakerlakeItem(刮擦物品)中的通行证

您的xpath对于页面无效,因为没有一个类具有“inline-b”或“height-100”。此页面通过Javascript进行了大量修改,因此您在浏览器中看到的内容将无法代表Scrapy收到的内容

xpath结果:

>>> response.xpath('//span[contains(@class, "inline-b")]')
[]
>>> response.xpath('//span[contains(@class, "height-100")]')
[]

xpath对于页面无效,因为没有一个类具有“inline-b”或“height-100”。此页面通过Javascript进行了大量修改,因此您在浏览器中看到的内容将无法代表Scrapy收到的内容

xpath结果:

>>> response.xpath('//span[contains(@class, "inline-b")]')
[]
>>> response.xpath('//span[contains(@class, "height-100")]')
[]

您确定XPath是正确的吗?我从你的代码中打开了url,但在那里找不到元素。。。从网络上看,很可能是源代码在您查看后发生了变化。我想获得飞机(例如)所需的时间。我认为xpath是正确的。。。非常感谢。我尝试了很多东西,使用scrapy从以下网站抓取一些数据:但我仍然得到一个空的项目使用这个新网站,我不知道为什么。。。这可能是因为Javascript,也可能是因为网站检测到一个程序试图获取数据,然后它不允许该程序。。。我也尝试了幻影和硒,但我没有得到我想要的。。。我愿意一个程序,每天爬这个网页,并采取一些特定的数据。如果你们中的一些人能给我一些建议,那我们就太好了!您确定XPath是正确的吗?我从你的代码中打开了url,但在那里找不到元素。。。从网络上看,很可能是源代码在您查看后发生了变化。我想获得飞机(例如)所需的时间。我认为xpath是正确的。。。非常感谢。我尝试了很多东西,使用scrapy从以下网站抓取一些数据:但我仍然得到一个空的项目使用这个新网站,我不知道为什么。。。这可能是因为Javascript,也可能是因为网站检测到一个程序试图获取数据,然后它不允许该程序。。。我也尝试了幻影和硒,但我没有得到我想要的。。。我愿意一个程序,每天爬这个网页,并采取一些特定的数据。如果你们中的一些人能给我一些建议,那我们就太好了!虽然它没有任何作用,
pass
在这里什么都不做。请参阅
pass
的文档。虽然它没有任何用途,但
pass
在这里什么都不做。查看
pass
的文档。哦,我明白了。。。那么,如果我想得到飞机所需的时间(例如),我应该写什么?非常感谢。根据我的观察和猜测(我不懂外语),每个航班都有“起飞日期时间”和“到达日期时间”。也许你可以得到这两个时间点,稍后再计算差异(航班时间)。谢谢,但我仍然得到一个空项目,按照你的建议执行。我不知道如何获得该特定网站的一些信息。。。我可以抓取其他网站的信息,但不能抓取那个网站的信息…哦,我明白了。。。那么,如果我想得到飞机所需的时间(例如),我应该写什么?非常感谢。根据我的观察和猜测(我不懂外语),每个航班都有“起飞日期时间”和“到达日期时间”。也许你可以得到这两个时间点,稍后再计算差异(航班时间)。谢谢,但我仍然得到一个空项目,按照你的建议执行。我不知道如何获得该特定网站的一些信息。。。我可以抓取其他网站的信息,但不能抓取那个网站的信息。。。