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

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

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

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Webサーバー

Webサーバーとは、HTTPリクエストに応じて、クライアントに情報を提供するシステムです。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

9753閲覧

curlで取得すると文字化けするWebサイト

EzrealTrueshot

総合スコア388

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Webサーバー

Webサーバーとは、HTTPリクエストに応じて、クライアントに情報を提供するシステムです。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2018/02/03 16:15

編集2018/02/03 16:31

chrome、IEなどの普通のWebブラウザで閲覧するときちんと表示されているWebサイトですが、linuxからcurlコマンドで取得すると文字化けしてしまいます。

一部抜粋

<FONT COLOR=#aaffaa><B>?燾K^仼澈 ・2 ?j</B></FONT></H3> 「スlFコ紂^「ス?F2017N 12 21・0 20ェ 58b<P> <B>@ ?F 13 00ェ `@</B><B>15 00ェ@</B><B>?Fx EbhejXK[f</B><P><BLOCKQUOTE>仼澈 ・BR><BR>1 [NA{ ?シAbvAXg [澈<BR>c・0ェ `ョ<BR>o[800 ~rW^[1200 ~</BLOCKQUOTE><HR> ?M?・ケ・BR> <DIV ALIGN=right>

本来ならURLを張り付けたいのですが、身内のスポーツサークルのWebサイトなため、貼り付けられません。

これをcurlでもきちんとした文字で取得したいのですが、方法はありませんでしょうか?
iconvで変換するといいという記事を見かけたのですが、元の文字コードが不明なためどうすることもできません。

お知恵を拝借できませんでしょうか?

*以下追記
上記文字化けはLinux(CentOS,Ubuntu共に)でcatで見た結果です。
vimで見たところまた違った表記だったため追記させて頂きます。

<HTML> <HEAD> <TITLE><8e>Q<89>A<8e>O<96>?<95>e</TITLE> <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache"> </HEAD> <BODY BACKGROUND="images/bluesky.jpg" COLOR=WHITE LINK=55aa55 VLINK=55aa55><FONT COLOR="#000000"><FONT COLOR=WHITE><H2><CENTER><8e>Q<89>A<8e>O<96>?<95>e</H1><HR><A HREF = "webcal.cgi?form=2&year=2018&mon=2&operation="><83>J<83><8c><83><93><83>_<81>[<82>O<96>s<82>e</A><81>@<81>^<81>@ <A HREF = "schedule.cgi?form=2&year=2018&mon=2&day=4"><83>X<83>P<83>W<83><85><81>[<83><8b><82>O<96>s<82>e</A></CENTER><HR> <H3>2018<94>N2<8c><8e>4<93>u<81>i<93>u<97>j<93>u<81>j <FONT COLOR=#aaffaa><B><81><9c><92>E<8f>i<97>u<8f>K<81>^<93>u<97>j<97>u<8f>K<89>i<81>i2<8e><9e><8a>O<81>j</B></FONT></H3> <8f><91><82>¢<82>?<90>l<81>F<91>o<8f>a<81>@<81>^<8f><91><82>¢<82>?<93>u<8e><9e><81>F2017<94>N 12<8c><8e> 21<93>u 0<8e><9e> 20<95>a 58<95>b<P> <B><81>@<8e><9e><8a>O<81>F 13<8e><9e> 00<95>a <81>`<81>@</B><B>15<8e><9e> 00<95>a<81>@</B><B><8f>e<8f><8a><81>F<83>x<83><8b><83>E<83>b<83>h<83>e<83>j<83>X<83>K<81>[<83>f<83><93></B><P><BLOCKQUOTE><93>u<97>j<97>u<8f>K<89>i<BR><BR>1<8e><9e><8a>O<94>?<83>A<83>b<83>v<81>A<83>X<83>g<83><8d><81>[<83>N<81>A<83>{<83><8c><81>[<97>u<8f>K<BR><8e>c<82>e30<95>a<8e><8e><8d><87><8c>`<8e>R<BR><83><81><83><93><83>o<81>[800<89>~<83>r<83>W<83>^<81>[1200<89>~</BLOCKQUOTE><HR> <95>O<90>M<82>I<82>?<82>e<82>U<82>1<82>n<BR>

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

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

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

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

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

himakuma

2018/02/03 16:27

chrome、IEということはWindowsで、見ているということですか?
himakuma

2018/02/03 16:28

結果はVIで見ているのでしょうか?
EzrealTrueshot

2018/02/03 16:30

cat でみた結果です。vimで見たところまた違った表記になっていましたので、追記させて頂きます。
EzrealTrueshot

2018/02/03 16:33

ブラウザでみたときは Windows,Mac,Linux(デスクトップ)どの環境で見ても、文字化けしていません。curlの結果だと文字化けしてしまいます。
himakuma

2018/02/03 16:35

HTML部分に文字コード指定がありませんか?
EzrealTrueshot

2018/02/03 16:37

はい、meta や charset で 検索したのですが、ヒットしませんでした・・・
kei344

2018/02/03 16:40

H3内の日本語は元は何と書かれていますか?
EzrealTrueshot

2018/02/03 16:44

<H3>2018年2月4日(日曜日) <FONT COLOR=#aaffaa><B>●通常練習/日曜練習会(2時間)</B></FONT></H3>
EzrealTrueshot

2018/02/03 16:44

chromeの開発者モードで確認したところH3タグは上記のようになっております。
guest

回答1

0

ベストアンサー

おそらくブラウザはWindowsを使用しているので、
標準の文字コードでShift_JISを使用しています。

LinuxではUTF-8が標準の文字コードの為、
表示が文字化けしているものと思われます。

なので、文字列としては正しいデータが取得できています。

下記できれいに表示されたりしませんか?
vi -c ":e ++enc=cp932" ファイル名

投稿2018/02/03 16:34

編集2018/02/03 16:39
himakuma

総合スコア952

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

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

EzrealTrueshot

2018/02/03 16:51

はい!、きれいに表示されてます! このファイルを catで開いてパイプで grep "日本語"で抽出したいのですが、どのような手法が考えられるでしょうか?
EzrealTrueshot

2018/02/03 16:57

Shift_JIS というのがわかったので、iconv使わせて頂きました。 ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問