天使と悪魔選手権

クロスドメインでページを取得する事は成功したのですが、
たまに文字化けするページが存在します。

以下のページが文字化けして旨く取得できませんでした。
相手のサイトの文字コードはutf-8なので行けるはずなのですが・・・
https://www.amazon.co.jp/gp/offer-listing/B002HJ …

スクリプトは以下の様に書きました。
jquery.xdomainajax.jsは、以下のページの物を使っています。
https://github.com/padolsey/jquery.fn/blob/maste …

scriptCharset:"utf-8"を入れたりしても変わらないです。。。
どうすれば良いかお手上げ状態です。よろしくお願いします。


====ここから====

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10 …
<script src="jquery.xdomainajax.js" type="text/javascript"></script>
<script>
var content ="";
$(document).ready(function(){
$.ajax({
url: 'https://www.amazon.co.jp/gp/offer-listing/B002HJ …
type: 'GET',
success: function(res) {
content = $(res.responseText).text();
console.log(content);
}
});
});


</script>
</head>
<body>
</body>
</html>

A 回答 (2件)

Amazonのこのページは、Shift-JISで書かれています。


ゆえに文字化けしているのだと思いますが?・・・
これは、このページを作成しているコーダーに問題があるだけです。

ご自身が作成しているのでなければ、笑ってやりすごすことがいいのでは?・・・
もし、読み取った文字コードがShift-JISならばUTF-8に変換するという、1ステップが必要では?

今回、回答をしていて、
正しいことを書いても理解度の乏しい人が質問している場合もあることを、最近悟りました。

あなたではありませんよ!
同じ日に回答をした人に、わからないなら回答するな!と書き込まれてしまい思ったことです。
WEB25周年の日に、このレベルの人に言われるとは、思ってもいなかった・・・

参考URL:https://www.amazon.co.jp/gp/offer-listing/B002HJ …
    • good
    • 0
この回答へのお礼

何度も回答していただきありがとうございます。
Shift_JISなんですね。

HTMLソースを見ると
<meta charset="utf-8">

でしたのでutf-8だと思っています。
ただブラウザの自動判定では確かにShift_JISになっています。

>もし、読み取った文字コードがShift-JISならばUTF-8に変換するという、1ステップが必要では?

これはどういうふうにやればいいのでしょうか?
以下のソースをたしてもダメした。

    beforeSend: function(xhr){
xhr.overrideMimeType("text/html;charset=Shift_JIS");
},

お礼日時:2014/03/14 00:03

ソース以前の問題です。



あなたが見ているブラウザの文字コードをUTF-8にする。
それでもおかしければ、キャッシュを見ているので、再読み込みする。

以上で解決すると思います。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。ブラウザの文字コードはutf-8になっています。
firefox,クローム、ieで試しています。

URLをyahooなどにすれば普通に取れるのですが、どうしても取れないURLがいくつか存在します。それに該当するページの1つが質問で書いたアマゾンのページになります。

よろしくお願いします。

お礼日時:2014/03/13 11:11

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!