2017-04-05 8 views
1

私は基本的に誰かのためにウェブサイトをプログラミングしています。彼の現在のファン数を表示して、彼のSoundcloudアカウントから直接コピーします。ここでコードを使用しています: (私が探しているコードを見つけるのに役立つ場合は、ここに彼のサウンドクラウドへのリンクがあります) "Follower"の数のカウントを見つけようとしていますhttps://soundcloud.com/gammatoid-officialウェブサイトから特定のコード行を見つけて、javascriptを使用してhtmlファイルに表示するにはどうすればよいですか?

<p id="Text"></p> 
<script src="https://soundcloud.com/gammatoid-official" type="text/html"> 
</script> 
<script> 
var fanSel = document.getElementsByClassName("infoStats__value sc-font-tabular-light").innerHTML; 
document.getElementById("Text").innerHTML = fanSel; 
</script> 

結果として「未定義」を与え続けますが、変更する必要があるものはわかりません。

+2

サウンドクラウドのウェブサイトからサウンドクリップを取り除く代わりに、サウンドクラウドのAPIを使用してください。あなたのメソッドを使用すると、Soundcloudがプロファイルページのコードを変更するたびに、コードを変更する必要があります。 –

答えて

0

スクリプトのようなページを読み込んで内容を取り出すことはできません。あなたはajaxコールを見ているかもしれません。まだクロスドメインポリシーは考慮する必要があり、以下はテストされていませんが、その点が分かるかもしれません。

$.ajax({ 
    url : 'https://soundcloud.com/gammatoid-official', 
    type : 'GET', 
    success: function(resultHTML){ 
     var $html = $(resultHTML); 
     var fansel = $html.find('.infoStats__value .sc-font-tabular-light').text(); 
     $("Text").innerHTML = fanSel; 
    } 
}) 
1

あなたがCross-Origin Resource Sharing (CORS)を介してそれらから明示的な許可を得ることなく他のウェブサイトからデータをロードすることはできませんので、あなたは現在、これは動作しませんやろうとしている方法。

これにはSoundcloud's APIを使用する必要があります。このデータをウェブサイトから正常に取り除いても、ウェブサイトを変更するたびにコードを変更する必要があり、APIを比較的安定した状態で維持する必要があります。

/usersエンドポイントを使用して、特定のユーザーのフォロワー数を要求できます。これは、他のプロパティの中でも特にfollower_countを持つJSONオブジェクトを提供します。

関連する問題