Python-Scrapy在web上爬行

Python-Scrapy在web上爬行,python,loops,scrapy,Python,Loops,Scrapy,好的,这是我的项目/蜘蛛,很好用 # -*- coding: utf-8 -*- import scrapy import time class SccbotakiSpider(scrapy.Spider): name = 'SccBotaki' start_urls = ['url'] time.sleep(1) def parse(self, response): daten = response.css('#daten').ext

好的,这是我的项目/蜘蛛,很好用

    # -*- coding: utf-8 -*-
import scrapy
import time

class SccbotakiSpider(scrapy.Spider):
    name = 'SccBotaki'
    start_urls = ['url']
    time.sleep(1)

    def parse(self, response):
        daten = response.css('#daten').extract()
        cartext = response.css('div.car_header > b::text').extract()
        spacerimg = response.css('div.rechts > img::attr(src)').extract()
        inhalt = response.css('div.inhalt')
        prodname = inhalt.css('div.prod-name::text').extract()
        artnr = inhalt.css('div.art-nr > span::text').extract()
        avaible = inhalt.css('div.ampel > img::attr(src)').extract()
        price = inhalt.css('div.preis::text').extract()


        for item in zip(prodname,artnr,avaible,price):
            scraped_info = {
            'prodname' : item[0] ,
            'artnr' : item[1] ,
            'avaible' : item[2] ,
            'price' : item[3] ,
        }
            yield scraped_info
请查看图片中的url,因为我无法在这篇文章中使用微小的url
但是我想把daten,cartext,SpaceLimg都刮干净,我会得到不同的/糟糕的结果 顺便说一句,在settings.py中,我希望导出到csv文件:

    #Export as CSV Feed
    FEED_FORMAT = "csv"
    FEED_URI = "UltraRacing.csv"
所以,我的问题是,当我添加“daten,Cartex,spacerimg”时,为什么我不能像我的图像那样刮呢? 如果我把所有的信息都拼凑在一起,我只会得到一行csv,所有的信息都在一个单元格中,如果我从循环中删除“daten,Cartex,spacerimg”,我会得到完美的结果


希望这是有意义的…

您正在尝试压缩不同大小的列表:
prodname
artnr
可用
price
有41个元素,但是
daten
cartext
只有1个元素,而
spacerimg
有9个元素。

发布代码而不是图像我能做些什么来刮除所有元素?首先,你需要了解你想要什么输出(并在这里显示出来),左边是我的剧本,看起来很完美,别误会我的意思…但右边是我想刮的元素,但不是那样的…剧本看起来是这样的:,顺便说一下,谢谢你的回答,我很感激@BaggelisKotsifakhs您需要解释如何将41个产品代码元素与9个图像元素进行匹配我想添加一些if语句,但在我这样做时不起作用。。。例如,“如果你找不到任何“daten”,那么给我空白”,我想如果我这样做,问题就会解决