我有幾個twitterbots,我在我的raspberryPi上運行。我將大部分函數包裝在一個try /中,除非確保某些錯誤不會中斷程序並繼續執行。twitter機器人和Python的tweepy問題
我也使用Python的Streaming庫作爲監視我想要機器人轉發的標記的源。
這裏是發生這種情況/殺死方案雖然我的主要功能包裹在一個不同的問題:
Unhandled exception in thread started by <function startBot5 at 0x762fbed0>
Traceback (most recent call last):
File "TwitButter.py", line 151, in startBot5
'<botnamehere>'
File "/home/pi/twitter/bots/TwitBot.py", line 49, in __init__
self.startFiltering(trackList)
File "/home/pi/twitter/bots/TwitBot.py", line 54, in startFiltering
self.myStream.filter(track=tList)
File "/usr/local/lib/python3.4/dist-packages/tweepy/streaming.py", line 445, in filter
self._start(async)
File "/usr/local/lib/python3.4/dist-packages/tweepy/streaming.py", line 361, in _start
self._run()
File "/usr/local/lib/python3.4/dist-packages/tweepy/streaming.py", line 294, in _run
raise exception
File "/usr/local/lib/python3.4/dist-packages/tweepy/streaming.py", line 263, in _run
self._read_loop(resp)
File "/usr/local/lib/python3.4/dist-packages/tweepy/streaming.py", line 313, in _read_loop
line = buf.read_line().strip()
AttributeError: 'NoneType' object has no attribute 'strip'
我的設置: 我有一個父類TwitButter.py,創建一個來自TwitBot.py的對象。這些對象是機器人,它們是在自己的線程中啓動的,因此它們可以獨立運行。
我在運行startFiltering()函數的TwitBot中有一個函數。它被封裝在一個try/except中,但我的except代碼從未被觸發。
我的猜測是錯誤發生在流媒體庫內。也許這個庫編碼很差,並且在回溯底部指定的行上斷開。
任何幫助都會很棒,我想知道其他人是否遇到過這個問題?
如果需要,我可以提供額外的細節。
謝謝!
固定在[github#870](https://github.com/tweepy/tweepy/pull/870)所以更新您的tweepy副本? –
非常感謝!我已經做出了改變,所以它應該都很好!我很欣賞快速反應!和noob我,我不知道我可以修改這些庫... – Discoveringmypath
@gz你想回答這個問題,所以我可以接受它。它似乎在工作。 – Discoveringmypath