解决报错TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'?

如题所述

答: 首先我们看到图片当中错误提示,错误出现在24行,fp.write函数,错误提示的意思是不支持的运算符类型,我觉得大概的意思就是write函数里面本来要写入一个字符串类型,因为title和contents不一定是字符串内容,因此将它们拼接在一起时得到的类型也不一定是字符串。解决办法是将原来的第15行变成 title = str(dd.a.stringt),将原来的23行变成contents=(div_tag.text),然后再运行一下,看一下有没有用呢?

如图画线部分

希望可以帮助到你!

追问

发现是拼写错误 string 写成了stringt,修改后出现新报错

    contents = div_tag.text
AttributeError: 'NoneType' object has no attribute 'text'

追答

看一下是不是text()

就是后面加一个括号表示这个是一个函数。

追问

谢谢老哥,问题解决了是访问频率太快了被服务器拒绝了。

添加了

sleep_time = random.randint(0,2)+random.random()

        print(sleep_time)

        time.sleep(sleep_time)

好了!

追答

😂😂没事没事

这样

温馨提示:内容为网友见解,仅供参考
无其他回答

...unsupported operand type(s) for +: 'NoneType' and 'str'?_百度...
解决办法是将原来的第15行变成 title = str(dd.a.stringt),将原来的23行变成contents=(div_tag.text),然后再运行一下,看一下有没有用呢?如图画线部分 希望可以帮助到你!

Python中None和'空字符串的区别
此时就会报错:TypeError: unsupported operand type(s) for +=: 'NoneType' and 'unicode'NnoeType不允许和unicode对象进行+=连接 使用:areaCode = ''for val in valList:areaCode += ','此时正常。两者区别:None是一个空的对象,代表什么都没有。而'',是一个字符串对象,代表一个空的字符...

...呀TypeError: unsupported operand type(s) for %: 'NoneType' and...
你的模块没有文档字符串。在模块头部加上文档字符串,并且其中要包含占位符%s以便输出locals()的值。

python3 defaultdict 和 dict的区别
TypeError: unsupported operand type(s) for |: 'dict_values' and 'set'3 排序字典键两种方法:3.1 sort:>>> Ks = list(d.keys())>>> Ks.sort()>>> for k in Ks:... print(k, d[k])... a 1b 23.2 sorted:>>> for k in sorted(d.keys()):... print(k, d[k])... a 1b ...

数据库中的空值与NULL的区别以及python中的NaN和None
此时就会报错:TypeError: unsupported operand type(s) for +=: 'NoneType' and 'unicode'NnoeType不允许和unicode对象进行+=连接 使用:areaCode = ''for val in valList:areaCode += ','此时正常。两者区别:None是一个空的对象,代表什么都没有。而'',是一个字符串对象,代表一个空的字符...

Python中None和'空字符串的区别
区别:None是一个空的对象,代表什么都没有。而'',是一个字符串对象,代表一个空的字符串。示例,当使用None时:a='abc'b= Noneprint a+b此时会报错:TypeError: cannot concatenate 'str' and 'NoneType' objects 因为,NnoeType不允许和str进行+连接使用:a='abc'b= ''print a+b >>> ...

Python中None和'空字符串的区别有哪些?
两者区别:None是一个空的对象,代表什么都没有。而是一个字符串对象,代表一个空的字符串。只有字符串才能和字符串相互连接。当使用None时:areaCode = Nonefor val in valList:areaCode += ',' 此时就会报错:TypeError: unsupported operand type(s) for +=: 'NoneType' and 'unicode'...

相似回答