私はPythonとRaspberry Piを初めて使用します。
私の目標: Raspberry Pi の構築と Python の学習へのジャンプの一環として、気象観測所の構築を計画しています。その一環として、天気をつぶやきます。これは使用される最終的なコードではないかもしれませんが。これは私が学ぶのを助けています。そのため、この質問を投稿しています。
Twython で Twitter に投稿するコードをさまざまなソースからまとめました。コード (以下を参照) はうまく機能します。SSLエラーが発生しないようにするには、python3を使用する必要がありました。
#!/usr/bin/env python3
import sys
from twython import Twython, TwythonError
#tweetStr = "Tweet goes here, limit 140 characters"
tweetStr = input("Type your Tweet: ")
#Your Twitter Application keys
apiKey = 'apiKey'
apiSecret = 'apiSecret'
accessToken = 'accessToken'
accessTokenSecret = 'accessTokenSecret'
api = Twython(apiKey,apiSecret,accessToken,accessTokenSecret)
try:
api.update_status(status=tweetStr)
except TwythonError as Error:
print (Error)
print ("Tweeted: ", tweetStr)
これは私が好きなように機能します。入力を求めます。機能する場合は、機能したことを確認するためにツイートを表示します。ただし、ユーザー入力をチェックして、140 文字以下であることを確認する機能を追加したいと考えています。141 未満の場合は続行し、140 チャーターを超える場合は、入力した文字数が多すぎるというエラーを返します。テキストツイートのみを使用し、リンクは使用しません。
以下を単独で動作させることができます。ただし、上記で動作させる方法がわかりません。(注: テストには <141 ではなく <15 を使用しており、140 文字を超える文字を入力する必要はありません)。140を超えるものを削除したくありませんが、エラーを返して再試行してください。
tweetStr = input("Tweet: ")
if len(tweetStr) < 10:
print (tweetStr)
else:
print ('too long')
私は次のことを試しましたが、うまくいきませんでした:
#!/usr/bin/env python3
import sys
from twython import Twython, TwythonError
#tweetStr = "Tweet goes here, limit 140 character"
tweetStr = input("Type your Tweet: ")
#Your Twitter Application keys
apiKey = 'apiKey'
apiSecret = 'apiSecret'
accessToken = 'accessToken'
accessTokenSecret = 'accessTokenSecret'
api = Twython(apiKey,apiSecret,accessToken,accessTokenSecret)
if len(tweetStr) < 15:
try:
api.update_status(status=tweetStr)
except TwythonError as Error:
print (Error)
else:
print ('Too long use less than 141 characters')
print ("Tweeted: ", tweetStr)
どんな助けでも大歓迎です。おそらく、Twython で同じことを行うためのまったく別の簡単な方法があるでしょう。