Python爬虫异常---TypeError: unsupported format string passed to NoneType.__format__

今天爬虫时偶遇的一个问题:当你爬取的网站对应位置没有内容(为空)时,python爬虫获取的值为 NoneType(<class ‘NoneType’>),然后就直接格式化输出(format),结果当然GG!!

下面谈谈这个问题:

原因:正如所报异常的意思,format格式化输出不支持NoneType类型。

Debug:不通过格式化输出打印爬虫获取的内容,发现有些数据域对应的值为None,type(None) --> <class ‘NoneType’>。

解决:要解决也很简单,对爬虫获取的数据在格式化打印输出前进行处理,将None改为其他 str 或者 int 类型便于标识的字段即可!

//result为爬虫获取的数据集
for i in result:
	if i is None:
		i = 0;  # 此处我将None重置为 0 

python的爬虫经常会爬取到None这种节点,当你获取的节点是None时,后续若需要对其进行操作就会报错,因此如果爬虫的数据中容易出现获取到None时,一定要先对爬虫获得的数据集进行处理,将None替换为其他字段。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章