2017-01-01 10 views
0

私はTwitterアカウントにメッセージを送るためにPythonで関数を実装しようとしています。機能のlasst行は以下のとおりです。Twitterにメッセージを送る

params=urllib.parse.urlencode({'status':msg}) 
resp=urllib.request.urlopen('http://twitter.com/statuses/update.json',params) 
resp.read() 

そして、私はこのメッセージが表示されました: はTypeError:POSTデータはバイト、バイトの反復可能な、またはファイルオブジェクトでなければなりません。それは型strであることはできません。

私は似たようなQ & Aを見て、私はエラーを見つけることができません。実は、私は..

を教科書から機能を取り、何度も改訂された誰かが私に

答えて

1

を助けるのではなく、このような何かのためにTwitterAPIライブラリを使用し、urllibを使用して独自のを書くことができる場合、私は感謝するでしょう。 Twitterなどの一般的な用途では、他の誰かがすでに徹底的な実装を開発していることが多く、そのようなことを使用すると、会話の基本機能を気にせずに独自のコードを実行できるようになりますTwitterに。

あなたは、簡単な操作を実行してTwitterAPIをインストールすることができます。

pip install TwitterAPI 

インストールが完了したら、あなたがしなければならないすべてが使用され、次の(TwitterAPIのREADMEから適応)との実際のコンテンツを提供するために独自のコードを追加しますつぶやき:

from TwitterAPI import TwitterAPI 

consumer_key = <your own key> 
consumer_secret = <your own secret> 
access_token_key = <your own token key> 
access_token_secret = <your own token secret> 

api = TwitterAPI(consumer_key, consumer_secret, access_token_key, access_token_secret) 

msg = 'This is a tweet!' 

request = api.request('statuses/update', {'status': msg}) 
print(request.status_code) 

このライブラリのドキュメントは非常に明確で、この単純な使用例以上のものがあります。

また、インターネットでのリクエストに関連するその他の作業を行う場合は、urllibの代わりにrequestsライブラリを参照することを強くおすすめします。それはあなたの多くの頭痛の種を保存します:

pip install requests 

ハッピーニューイヤー:

http://docs.python-requests.org/en/master/

次の方法でrequestsをインストールすることができます!

関連する問題