2016-09-22 12 views
0

GithubのJqueryプロジェクトで暗号化されたコードファイルのコンテンツを取得したいとします。 curlリクエストを行うと、返されたコードの内容が解読されます。Mac端末でPythonリクエストとCurlリクエストがGithub API経由でコードコンテンツを取得する

しかし、Pythonリクエストで同じパラメータを使用すると、暗号化されたものが存在します。それはなぜですか、私は暗号化されたバージョンを入手するために何ができますか?ここで

は私のcurlコマンドです:

curl https://api.github.com/repos/jquery/jquery/git/blobs/1d2872e34a809a9469ac5cb149a40fc7b8007633 -H "Accept: application/vnd.github-blob.raw" 

出力は以下の通りです:

import requests 

code = requests.get('https://api.github.com/repos/jquery/jquery/git/blobs/1d2872e34a809a9469ac5cb149a40fc7b8007633'\ 
          ,headers={'content-type':'application/vnd.github-blob.raw'}) 

code.json() 

出力はこれです:

{'content': 'PD9waHAKCSMgTG9hZCBhbmQgcnVuIHRoZSB0ZXN0IHN1aXRlIGFzIGEgcHJv\ncGVyIFhIVE1MIHBhZ2UKCWhlYWRlcigiQ29udGVudC10eXBlOiBhcHBsaWNh\ndGlvbi94aHRtbCt4bWwiKTsKCXJlYWRmaWxlKCJpbmRleC5odG1sIik7Cj8+\nCg==\n', 
'encoding': 'base64', 
'sha': '1d2872e34a809a9469ac5cb149a40fc7b8007633', 
'size': 136, 
'url': 'https://api.github.com/repos/jquery/jquery/git/blobs/1d2872e34a809a9469ac5cb149a40fc7b8007633'} 

<?php 
    # Load and run the test suite as a proper XHTML page 
    header("Content-type: application/xhtml+xml"); 
    readfile("index.html"); 
?> 

ここに私のpythonのコードです

答えて

2
>>> import base64 
>>> base64.b64decode('PD9waHAKCSMgTG9hZCBhbmQgcnVuIHRoZSB0ZXN0IHN1aXRlIGFzIGEgcH 
Jv\ncGVyIFhIVE1MIHBhZ2UKCWhlYWRlcigiQ29udGVudC10eXBlOiBhcHBsaWNh\ndGlvbi94aHRtbC 
t4bWwiKTsKCXJlYWRmaWxlKCJpbmRleC5odG1sIik7Cj8+\nCg==') 
'<?php\n\t# Load and run the test suite as a proper XHTML page\n\theader("Conten 
t-type: application/xhtml+xml");\n\treadfile("index.html");\n?>\n' 
>>> 

代わりにキーが「同意する」である

>>> requests.get('https://api.github.com/repos/jquery/jquery/git/blobs/1d2872e34 
a809a9469ac5cb149a40fc7b8007633',headers={"Accept": "application/vnd.github-blob 
.raw"}).text 
u'<?php\n\t# Load and run the test suite as a proper XHTML page\n\theader("Conte 
nt-type: application/xhtml+xml");\n\treadfile("index.html");\n?>\n' 
>>> 

予告...ない「コンテンツタイプ」

+0

はあなたにJoranをありがとう...あなたはcurlコマンドを使用するのと同じヘッダを送信訂正のために。 – MLhacker