2017-05-13 7 views
0

私はちょうどpythonを開始し、私が現在取り組んでいるプロジェクトのWebページと対話しようとしています。python 3磁石にリダイレクト

私はURLが にリダイレクトすることをマグネットリンクを取得しようとしていますが、私は

import urllib.request 

class SmartRedirectHandler(urllib.request.HTTPRedirectHandler): 
    def http_error_302(self, req, fp, code, msg, headers): 
     #print(urllib.request.geturl()) 
     print("Redirected") 
下記のファイルredirectdefnで私が再定義されたエラーそのため302

trial = urllib.request.Request("https://www.shanaproject.com/download/149913/") 
opener = urllib.request.build_opener(redirectdefn.SmartRedirectHandler()) 
f = opener.open(trial) 

HTTPエラーを取得

しかし、まだ私にエラー302を与えます。 どのようにリダイレクトするマグネットリンクを取得しますか?

+0

302は、エラーが、リダイレクトではありません。あなたが探しているURLは302レスポンスの 'Location'ヘッダにあります。 –

答えて

0

あなただけのエラーをキャッチし、例外からURLを抽出できます。

try: 
    urllib.request.urlopen(trial) 
except urllib.error.HTTPError as e: 
    print("url is", e.url) 
関連する問題