Python爬取数据持久化Pickle异常:AttributeError: 'NoneType' object has no attribute 'picklable'

起因

爬取网页信息,持久化字符串数组到本地文件时,出现了此异常

分析

调试发现,从本地文件读取的数组数据,在操作字符串时,其原有的str数据类型经过操作,转变为了NavigableString,再次持久化时出现了异常

结论

通过pickle.load(文件流)获取的数据对象,在对数据进行赋值操作的时候,其原有的str类型,会被替换为NavigableString类型,将其类型转换为str类型即不会报错

解决方案

在进行赋值操作的时候,将目标转换为str类型即可

str(xxx)
posted @ 2020-11-28 20:25  lifelikeplay  阅读(457)  评论(0编辑  收藏  举报