質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

0回答

964閲覧

緯度経度を指定してtwitterAPIから情報を得る際のhttpエラーについて

suwakou

総合スコア13

Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2020/09/08 05:44

twttterAPIから緯度経度を指定して情報を取得したいのですが、エラーとなってしまいます
環境にgoogle colaboratoryを使用していますが、for msg in twitter_stream.statuses.filter(**params):の部分に赤線が引かれています。不備があれば教えていただきたいです。

入力したコード↓

pip install twitter from twitter import * auth = OAuth( consumer_key='000', consumer_secret='000', token='000', token_secret='000' ) params = dict() params["locations"] = "-122.75,36.8,-121.75,37.8" twitter_stream = TwitterStream(auth=auth, domain='stream.Twitter.com') for msg in twitter_stream.statuses.filter(**params): print(msg) HTTPError Traceback (most recent call last) /usr/local/lib/python3.6/dist-packages/twitter/stream.py in handle_stream_response(req, uri, arg_data, block, timeout, heartbeat_timeout) 210 try: --> 211 handle = urllib_request.urlopen(req,) 212 except urllib_error.HTTPError as e: 9 frames /usr/lib/python3.6/urllib/request.py in urlopen(url, data, timeout, cafile, capath, cadefault, context) 222 opener = _opener --> 223 return opener.open(url, data, timeout) 224 /usr/lib/python3.6/urllib/request.py in open(self, fullurl, data, timeout) 531 meth = getattr(processor, meth_name) --> 532 response = meth(req, response) 533 /usr/lib/python3.6/urllib/request.py in http_response(self, request, response) 641 response = self.parent.error( --> 642 'http', request, response, code, msg, hdrs) 643 /usr/lib/python3.6/urllib/request.py in error(self, proto, *args) 569 args = (dict, 'default', 'http_error_default') + orig_args --> 570 return self._call_chain(*args) 571 /usr/lib/python3.6/urllib/request.py in _call_chain(self, chain, kind, meth_name, *args) 503 func = getattr(handler, meth_name) --> 504 result = func(*args) 505 if result is not None: /usr/lib/python3.6/urllib/request.py in http_error_default(self, req, fp, code, msg, hdrs) 649 def http_error_default(self, req, fp, code, msg, hdrs): --> 650 raise HTTPError(req.full_url, code, msg, hdrs, fp) 651 HTTPError: HTTP Error 401: Authorization Required During handling of the above exception, another exception occurred: TwitterHTTPError Traceback (most recent call last) <ipython-input-20-da1590de9d34> in <module>() ----> 1 for msg in twitter_stream.statuses.filter(**params): 2 print(msg) /usr/local/lib/python3.6/dist-packages/twitter/api.py in __call__(self, **kwargs) 332 return self._handle_response_with_retry(req, uri, arg_data, _timeout) 333 else: --> 334 return self._handle_response(req, uri, arg_data, _timeout) 335 336 def _handle_response(self, req, uri, arg_data, _timeout=None): /usr/local/lib/python3.6/dist-packages/twitter/stream.py in _handle_response(self, req, uri, arg_data, _timeout) 286 return handle_stream_response( 287 req, uri, arg_data, block, --> 288 _timeout or timeout, heartbeat_timeout) 289 290 TwitterCall.__init__( /usr/local/lib/python3.6/dist-packages/twitter/stream.py in handle_stream_response(req, uri, arg_data, block, timeout, heartbeat_timeout) 211 handle = urllib_request.urlopen(req,) 212 except urllib_error.HTTPError as e: --> 213 raise TwitterHTTPError(e, uri, 'json', arg_data) 214 return iter(TwitterJSONIter(handle, uri, arg_data, block, timeout, heartbeat_timeout)) 215 TwitterHTTPError: Twitter sent status 401 for URL: 1.1/statuses/filter.json using parameters: (locations=-122.75%2C36.8%2C-121.75%2C37.8&oauth_consumer_key=yDwKsirEsQauycgUcq3WiwNDo&oauth_nonce=11818088211377544754&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1599543020&oauth_token=1273157088810872832-Vf8iUoNNPN20fwubUQ4g5NNhhr4Vul&oauth_version=1.0&oauth_signature=ZUi1QUprI1zIA5Xia4Ml9yQAnaU%3D) details: <html>\n<head>\n<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>\n<title>Error 401 Unauthorized</title> </head> <body> <h2>HTTP ERROR: 401</h2> <p>Problem accessing '/1.1/statuses/filter.json'. Reason: <pre> Unauthorized</pre> </body> </html>

googlecolaboratoryでのエラー
イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問