刮板没有结果

时间:2019-01-07 19:10:20

标签: python web-scraping scrapy scrapy-spider scrapy-splash

我以为我现在对此已经掌握了,但是我又遇到了一个问题。

我没有得到这样的结果-但是,如果将收益率移了一个选项卡-我会得到可疑的前两项。

以下是日志的一小段:

2019-01-07 20:00:16 [scrapy.extensions.logstats] INFO: Crawled 1 pages (at 1 
pages/min), scraped 0 items (at 0 items/min)
2019-01-07 20:00:16 [scrapy.core.engine] DEBUG: Crawled (200) <GET 
https://www.mysite.no.html?dest_id=-263870;checkin=2019-02-01;checkout=2019- 
02-02;group_adults=1 via http://localhost:8050/render.html> (referer: None)

功能如下:

    def parse(self, response):  
    item = klekkenItem()
    item['skaptdato'] = datetime.datetime.now()
    url_en = response.url # Henter urlen
    resultat = urlparse(url_en).query.split('=')[-3]  # Plukker ut deler av urlen
    nytt_resultat = resultat.split(';',1)[0] # plukker ut første del av resultatet
    fradatoen = ''.join(nytt_resultat) # gjør om datoen til en streng
    item['fradato'] = datetime.datetime.strptime(fradatoen, '%Y-%m-%d') # Konverterer til datoformat                
    tabellen = response.css('td.hprt-table-cell-roomtype')      
    for room in tabellen:
        romnavnet = room.css('span.hprt-roomtype-icon-link::text').get()    
        item['romnavn'] = romnavnet.strip() 
        yield item

这是[[页面] [1]

的链接

顺便说一句:我已经四次检查了我的标签页(五次)...

我想念什么?任何人?我敢肯定这是一个盲点。

2 个答案:

答案 0 :(得分:1)

tabellen = response.css('td.hprt-table-cell-roomtype')
romnavnet = room.css('span.hprt-roomtype-icon-link::text').extract()    #use extract function or `extract_first()`

该行为您提供4行,而第一个行为冗余行,其他三个行为数据行。

您无需使用启动即可获取此数据。它在网页上静态可用。

答案 1 :(得分:1)

尝试消耗生成器:

def parse(self, response):
    pass # your implementation


res = self.parse(some_response)  # it's a generator, lazy..
for i in res:
   print(i) # should consume the generator and print