コピーライトの文字(©)を調べてみた

よく見かける「©」の文字。この文字は一体何なのでしょうか?

疑問に思ったので調べてみました。

 

 

HTML のソースコードに直接記述できない文字がある

HTML のソースコードに直接書けない記号があります。

たとえば、HTML のソースコードに「<test>」と記述すると「タグ」だと認識されてしまいます。

 

その場合は、以下のように記述します。

  • < ← &lt; ← little than ~ の略
  • > ← &gt; ← greater than ~ の略

 

©はマルシーマーク、コピーライトマークなどと呼ばれる

©は HTML では「&copy;」と表現されます。

 

実際に作ってみます。

[root@SAKURA_VPS html]# pwd
/var/www/html
[root@SAKURA_VPS html]# vi index.html
Hello World!
&copy; ← コピーライトの挿入します。
[root@SAKURA_VPS html]#

 

Curl コマンドで表示してみる

まずは curl コマンドでアクセス。

[root@SAKURA_VPS html]# curl http://localhost
Hello World!
&copy; ← このまま表示されます。
[root@SAKURA_VPS html]#

 

ブラウザで表示してみる

次にブラウザからアクセス。

ちゃんとコピーライトマークで綺麗に表示されています。

 

Selenium WebDriver で Web スクレイピング

以前、Selenium WebDriver で Web スクレイピングプログラムを作りました。

 

【Python】Python 3.6 & Selenium WebDriver & PhantomJS でスクレイピング(URLを引数で受け取る)【Part.5】

 

Webスクレイピング(Selenium WebDriver)でのアクセス。

(pyenv) [test@SAKURA_VPS scraping]$ cat text.txt
<html><head></head><body>Hello World!
c
</body></html>(pyenv)

[test@SAKURA_VPS scraping]$

 

 

コンピュータ上ではコピーライトは3種類で表現される

まとめると

  • curlコマンド ← &copy;
  • ブラウザ   ← ©
  • Webスクレイピング ← c のようなもの(c に見えるが c ではない)

になります。

 

 

UTF-8の文字コード表

https://seiai.ed.jp/sys/text/java/utf8table.html

 

 

この表を確認すると UTF-8 で「©」は「c2a9」になります。

 

実際にどうなっているのか文字列をダンプしてみます。

 

Linuxでのダンプコマンド

Linuxには多くのダンプコマンドがあります。

  • hexdump コマンド
  • od コマンド

など。

 

hexdump コマンド

hexdump -C <ファイル> ← 16進数とASCII文字で表示します。

hexdump -c <ファイル> ← 1バイトのASCII文字で表示します。

 

(pyenv) [test@SAKURA_VPS scraping]$ hexdump -C text.txt
00000000 3c 68 74 6d 6c 3e 3c 68  65 61 64 3e 3c 2f 68 65  |<html><head></he|
00000010 61 64 3e 3c 62 6f 64 79  3e 48 65 6c 6c 6f 20 57  |ad><body>Hello W|
00000020 6f 72 6c 64 21 0a c2 a9  0a 3c 2f 62 6f 64 79 3e  |orld!....</body>| ← 16進数では表示されますが、ASCIIでは表示されずに「....」になっています。
00000030 3c 2f 68 74 6d 6c 3e |</html>|
00000037
(pyenv) [test@SAKURA_VPS scraping]$ hexdump -c text.txt
0000000 < h t m l > < h e a d > < / h e
0000010 a d > < b o d y > H e l l o W
0000020 o r l d ! \n 302 251 \n < / b o d y > ← コピーライト文字は2バイト文字なので、表示されません。
0000030 < / h t m l >
0000037
(pyenv) [test@SAKURA_VPS scraping]$ hexdump -v text.txt
0000000 683c 6d74 3e6c 683c 6165 3e64 2f3c 6568
0000010 6461 3c3e 6f62 7964 483e 6c65 6f6c 5720
0000020 726f 646c 0a21 a9c2 3c0a 622f 646f 3e79 ← 順番が逆転しています。
0000030 2f3c 7468 6c6d 003e
0000037
(pyenv) [test@SAKURA_VPS scraping]$

 

 

結論を言うと、「c」に見えるが「c」ではなかったということです。

 

 

 

 

Posted by 100%レンタルサーバーを使いこなすサイト管理人

コメントを残す

メールアドレスが公開されることはありません。