这该怎么解决呀 可以帮我指正一下嘛 涉及到的publish_time的变量都在这里了
for p in publish_times:
publish_time=p#bs4.element.Tag类型
publish_time=str(publish_time)#str
publish_time=re.findall('<a href="//weibo.com.*?>(.*?)</a>',publish_time,re.S)#提取时间,如['09月03日 21:20']
publish_time=[publish.strip() for publish in publish_time]#去除前后空白
time_data += publish_time
报了这个错误
publish_time=str(publish_time)#str
UnboundLocalError: local variable 'publish_time' referenced before assignment
UnboundLocalError: local variable 'publish_time' referenced before assignment
这个错误的意思: 局部变量'publish_time'在还没有被分配前就被引用了。
直白的说就是:
局部变量'publish_time'应该先赋值后引用。你一定奇怪在for循环里不是已经有publish_time了吗?那个不算。在for循环里的publish_time的作用域就只停留在for循环内。
你是不是得改成:
time_data = ""
for p in publish_times:
publish_time=p#bs4.element.Tag类型
publish_time=str(publish_time)#str
publish_time=re.findall('<a href="//weibo.com.*?>(.*?)</a>',publish_time,re.S)#提取时间,如['09月03日 21:20']
publish_time=[publish.strip() for publish in publish_time]#去除前后空白
time_data += publish_time