您的位置:首页 > 数据库

Scrapy保存到txt文件或者数据库里面

2017-05-10 19:06 141 查看
首先要理解yield的作用。

在pipelines.py文件中定义了保存方法,但是一直没有保存,为什么呢?

file = open("E:\\Scripy\\spidersitems.txt", "a")  # 以追加的方式打开文件,不存在则创建

        # 因为item中的数据是unicode编码的,为了在控制台中查看数据的有效性和保存,

        # 将其编码改为utf-8

        item_string = str(item).decode("unicode_escape").encode('utf-8')

        file.write(item_string)

        file.write('\n')

        file.close()

        print item_string  #在控制台输出

        return item  # 会在控制台输出原item数据,可以选择不写

最后找到原因,Setting.py里面没有配置,配置如下:

ITEM_PIPELINES = {

    'tutorial.pipelines.TutorialPipeline': 300,

}

这样就可以将数据保存了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: