python异常重新执行_如果发生错误,请重新运行Python脚本

我正在使用他们的流媒体API来获取twitter数据,有时,我会File "//swigel_local/Shared/Resources/Tools/Twitter/Streaming/StreamingTwitter.py", line 68, in

stream.filter(track=TRACK_TERMS)

File "C:\Users\SwigelUser\Anaconda3\lib\site-packages\tweepy\streaming.py", line 445, in filter

self._start(async)

File "C:\Users\SwigelUser\Anaconda3\lib\site-packages\tweepy\streaming.py", line 361, in _start

self._run()

File "C:\Users\SwigelUser\Anaconda3\lib\site-packages\tweepy\streaming.py", line 294, in _run

raise exception

File "C:\Users\SwigelUser\Anaconda3\lib\site-packages\tweepy\streaming.py", line 263, in _run

self._read_loop(resp)

File "C:\Users\SwigelUser\Anaconda3\lib\site-packages\tweepy\streaming.py", line 313, in _read_loop

line = buf.read_line().strip()

AttributeError: 'NoneType' object has no attribute 'strip'

这会停止我的计划。有没有一种方法可以在这个错误发生时自动重新运行我的程序?在

我的代码是:

^{pr2}$

我不知道为什么会出错。但我认为这和我最近所做的改变有关。在

以前,我在MySQL中的表有utf8排序规则,但这会导致警告,然后我阅读了文章,并将我的表改为utf8mb4unicode。

警告消失了,程序运行正常。但有时,在程序运行时会出现上述错误。在def _read_loop(self, resp):

charset = resp.headers.get('content-type', default='')

enc_search = re.search('charset=(?P\S*)', charset)

if enc_search is not None:

encoding = enc_search.group('enc')

else:

encoding = 'utf-8'

buf = ReadBuffer(resp.raw, self.chunk_size, encoding=encoding)

while self.running and not resp.raw.closed:

length = 0

while not resp.raw.closed:

line = buf.read_line().strip()

if not line:

self.listener.keep_alive() # keep-alive new lines are expected

elif line.isdigit():

length = int(line)

break

else:

raise TweepError('Expecting length, unexpected value found')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值