いつもお世話になっております。
phpQueryでスクレイピングの練習をしているのですが、HTML構造はそのままコピーして来れているようですが、その中の日本語が文字化けしてしまします。
ターゲットにしている文字コードはUTF-8で、プログラムでもUTF-8を利用しているのですが、やはり文字化けしてしまします。そのようにしたら文字化けしないようにできるのでしょうか?
php
1<?php 2ini_set('display_errors',1); 3header("Content-Type: text/html; charset=UTF-8");//文字化け防止 4 5 6require_once('phpQuery.php'); //phpQueryというモジュールを使う 7 8// HTMLデータを取得する 9$html = file_get_contents('http://meigen.keiziban-jp.com/'); //ターゲットのURL 10 11// HTMLをオブジェクトとして扱う 12$doc = phpQuery::newDocument($html); 13//$doc = phpQuery::newDocument($html, 'HTML-ENTITIES', 'EUC-JP');//ここでもUTF-8を指定して見るもWarning: DOMDocument::saveHTML(): unknown encodingが発生する 14 15$messages = $doc['div.gaiyoutop']->find('.100sen'); //これだけでトリミングしたい要素が<html><header><body>付きで代入される 16 17echo $messages; //文字化け!
文字化けした結果がこちらです。
html
1<html><head><style id="style-1-cropbar-clipper">/* Copyright 2014 Evernote Corporation. All rights reserved. */ 2.en-markup-crop-options { 3 top: 18px !important; 4 left: 50% !important; 5 margin-left: -100px !important; 6 width: 200px !important; 7 border: 2px rgba(255,255,255,.38) solid !important; 8 border-radius: 4px !important; 9} 10 11.en-markup-crop-options div div:first-of-type { 12 margin-left: 0px !important; 13} 14</style></head><body><p class="100sen"> 15ããããã¨ãããä¼ãå¿ããã¨ä¸ç徿ããã 16<br> 17ï¼ä¸æï¼ 18</p> 19<p class="100sen"> 20çµé¨ã¨ããã®ã¯ãè«å¤§ãªãéã«å¹æµãã価å¤ããã<br>ï¼ãã³ã¸ã£ãã³ã»ãã©ã³ã¯ãªã³ï¼ 21</p> 22<p class="100sen"> 23人çã¯è¦ãããèãããã試ãããã®ï¼ã¤ã®ç¥æµã§ã¾ã¨ã¾ã£ã¦ããã 24<br> 25å¤ãã®äººã¯è¦ããèãããã°ããã§ 26<br> 27ä¸çªéè¦ãªâ試ãããâãã»ã¨ãã©ããªã<br>ï¼æ¬ç°å®ä¸éï¼ 28</p> 29<p class="100sen"> 30äººãæ³åã§ãããã¹ã¦ã®äºã¯èµ·ããããç¾å®ã <br>ï¼ã¦ã£ãªã¼ã»ã¬ãã³ï¼ 31</p> 32<p class="100sen"> 33æçã¯çºæã®ç¶ã§ãã<br>ï¼ã¬ãªã¬ãªã»ã¬ãªã¬ã¤ï¼ 34</p> 35<p class="100sen"> 36大ãã夢ãæã¦ãå°ãã䏿©ãè¸ã¿åºã<br>ï¼ç«¹å åï¼ 37</p> 38<p class="100sen"> 39ç¡ç¥ãæãããªãããå½ãã®ç¥èãæãã<br>ï¼ãã¬ã¼ãºã»ãã¹ã«ã«ï¼ 40</p> 41<p class="100sen"> 42å®éã«è¦ãªãã¨åãããªããè¦ããã¨ããªããã°å§ã¾ããªã<br>ï¼ã¬ãªã¬ãªã»ã¬ãªã¬ã¤ï¼ 43</p> 44<p class="100sen"> 45ãã¾ã è¶³ããªããããããªããã¨èãã<br>ï¼æ¾ä¸å¹¸ä¹å©ï¼ 46</p> 47<p class="100sen"> 48天æã¨ã¯æ¬è³ªãè¦æã人ã§ãã<br>ï¼ã«ã¼ã©ã¤ã«ï¼ 49</p> 50<p class="100sen"> 51èªç¶ã¯æã ã®ç¥æ§ã«ã¨ã£ã¦ã¯éããªãé©åãã¹ããã¨ã 52<br> 53æé«åº¦ã®å®¹æãã¨åç´ãã§è¡ã£ã¦ããã®ã <br>ï¼ã¬ãªã¬ãªã»ã¬ãªã¬ã¤ï¼ 54</p> 55<p class="100sen"> 56å°çã¯ä¿ºã®éåå°ã <br>ï¼ä¸æµ¦éä¸éï¼ 57</p> 58<p class="100sen"> 59è±ã¯ä½æ ç¾ãããã<br>ä¸çã®æ°æã¡ã§å²ãã¦ããããã <br>ï¼å «æ¨éåï¼ 60</p> 61<p class="100sen"> 62åéã«å¥½ãããããªã©ã¨æãããåéããå¤ç«ãã¦ãããã¨è ¹ã決ã㦠63<br> 64èªåã貫ãã¦ããã°æ¬å½ã®æå³ã§ã¿ããªã«åã°ãã人éã«ãªãã<br>ï¼å²¡æ¬å¤ªéï¼ 65</p> 66<p class="100sen"> 67ç¸æã®éã¡ãå¿ è¦ä»¥ä¸ã«è¿½åããç¬é<br>ä¸å¹¸ãå§ã¾ãã¾ã<br>ï¼ã¸ã§ã»ãã»ãã¼ãã£ã¼ï¼ 68</p> 69<p class="100sen"> 70大人ã¯åä¾ã®é ã®ç´ç²ãªãã¯ã¼ããªããã¦ãã¾ã£ã¦ããã 71<br> 72ã¾ãããã§ããªãããã¨ããçºæ³ãã¦ãã¾ã<br>ï¼çå±±å³äº¬ï¼ 73</p> 74<p class="100sen"> 75çµæã ãã®æåã«ä¾¡å¤ã¯ãªãã 76<br> 77仲éã¨å ±ã«ä½ã£ã¦ããéç¨ã«ããã価å¤ããã<br>ï¼æ åå²å¤ï¼ 78</p> 79<p class="100sen"> 80è±ã¯ãã å²ãããã ã²ãããã«<br>ï¼ç¸ç°ã¿ã¤ãï¼ 81</p> 82<p class="100sen"> 83å¥åº·ãªäººã«ã¯ç æ°ã«ãªãå¿é ãããã 84<br> 85ç 人ã«ã¯å復ããã¨ããæ¥½ãã¿ããã<br>ï¼å¯ºç°å¯ å½¦ï¼ 86</p> 87<p class="100sen"> 88æèã®é«ãã¨äººçã®å å®åº¦ã¯é£åãã¦ãã<br>ï¼ä¸æï¼ 89</p> 90<p class="100sen"> 91ãæ¥ãããããã¨æãããã¨ãã鲿©ã¯å§ã¾ã<br>ï¼éæå ä¹ï¼ 92</p> 93<p class="100sen"> 94éå¢ã«åãæè²ã¯ãªã<br>ï¼ãã³ã¸ã£ãã³ã»ãã£ãºã¬ã¼ãªï¼ 95</p> 96<p class="100sen"> 97èªåã¨ã®ç´æããã<br>ï¼å²©å·ç´è£ï¼ 98</p> 99<p class="100sen"> 100æåãªäººã¨æ®éã®äººãåããã®ã¯ 101<br> 102ä½ãã«æã¡è¾¼ãã éã®å·®ã ã¨æã<br>ï¼ã¤ã¢ã³ã»ã½ã¼ãï¼ 103</p> 104<p class="100sen"> 105人ã¨åºä¼ã£ããããã§ãèªåã¨ãåºä¼ãã<br>ï¼è°·å·ä¿å¤ªéï¼ 106</p> 107<p class="100sen"> 108夢ãå®ç¾ã§ãããå¦ãã¯éä¸ã§è«¦ãããã©ããã«ããã£ã¦ãã¾ãã 109<br> 110å¿ è¦ãªã®ã¯å¼·ãæ ç±ï¼ã¹ãã£ã¼ãã»ã¸ã§ããºï¼ 111</p> 112<p class="100sen"> 113ä¾ããã®ææãåççã§ãã£ã¦ãææ¦ããã«å¤ãããã¨ã§ããã° 114<br> 115ãã®æããããéããã¦åã«é²ãã¹ãã <br>ï¼ã¤ã¼ãã³ãã¹ã¯ï¼ 116</p> 117<p class="100sen"> 118æ ç±ãæã¤ï¼äººã¯ãæ ç±ãæããªãï¼ï¼ï¼äººã«åã<br>ï¼ã¦ã©ã«ãã»ãã£ãºãã¼ï¼ 119</p> 120<p class="100sen"> 121æ¬å½ã«å±éºãªã®ã¯ãä½ãããªããã¨ã <br>ï¼ããã¹ã»ã¦ã§ã¤ããªã¼ï¼ 122</p> 123<p class="100sen"> 124å¼±ãã¦ãããã£ã¨å¼±ã奴ãè¦ã¤ãã¡ããã¡<br>ï¼ç°èéå¿ï¼ 125</p> 126<p class="100sen"> 127åºä¸ã¨ã¯ãä¸ã«åºããã¨æ¸ããä¼ç¤¾ã«è©ä¾¡ãã¦ãããããã§ã¯ãªã 128<br> 129ã©ãã«è¡ã£ã¦ãéç¨ããèªåã«ãªãããã«é å¼µããã¨<br>ï¼è¤å·»å¹¸å¤«ï¼ 130</p> 131<p class="100sen"> 132çå®ã¯ãã¤ãå°æ°æ´¾ï¼æ¹¯å·ç§æ¨¹ï¼ 133</p> 134<p class="100sen"> 135ãã£ã¨ãå±éºãªãã¨ã¯ 136<br> 137æåããããããèªåã®æåãèªããã®ãæãããã¨ã§ãã 138<br> 139ãã®æåããä½ãå¦ã°ãªãäºã§ãã<br>ï¼ã¬ã¼ãã³ï¼ 140</p> 141<p class="100sen"> 142ç¾ä»£ç¤¾ä¼ã«ããã¦æå¤§ã®ãªã¹ã¯ã¯ 143<br> 144ã人çã徿ãããã¨ãã ã¨æããã§ãã 145<br> 146ééçãªãªã¹ã¯ãªãã¦ãããæå³å¤§ãããã¨ã¯ãªã<br>ï¼ä¸æ¨è°·æµ©å²ï¼ 147</p> 148<p class="100sen"> 149æåãã人ã¯ããªã¹ã¯ã¨ã®ã£ã³ãã«ãè¦æ¥µãã¦è¡åãã<br>ï¼æ¬ç°å¥ï¼ 150</p> 151<p class="100sen"> 152人çã®ç®æ¨ã¯ä¸ã¤ã§ãã£ã¦ããããã«å°éããããã®éã¯äººã®æ°ã ããã<br>ï¼ä½è¤è±æ¨¹ï¼ 153</p> 154<p class="100sen"> 155å±±ã¯è¥¿ãããæ±ããã§ãç»ããã 156<br> 157èªåãæ¹åãå¤ããã°ãæ°ããéã¯ãããã§ãéãã<br>ï¼æ¾ä¸å¹¸ä¹å©ï¼ 158</p> 159<p class="100sen"> 160ããªãã®äººçããããã«çãã¦ããã人ã¯ããªãã<br>ï¼ããªã¼ã»ãã¼ãã³ï¼ 161</p> 162<p class="100sen"> 163èç è ã®ç®ã«ã¯ãæµã¯å¸¸ã«å¤§è»ã«è¦ãã<br>ï¼ç¹ç°ä¿¡é·ï¼ 164</p> 165<p class="100sen"> 166人çããè¿ã£ã¦ããã®ã¯ããã¤ãããªããæããç<br>ï¼æè¤èå¤ªï¼ 167</p> 168<p class="100sen"> 169ç´ ç´ãªå¿ã»ç±æã»åªåã¨ãã£ãè¨è㯠170<br> 171ãã¾ãã«ããªããã£ããªããã«ãèª°ãæ°ã«çããªãã 172<br> 173ããããããããåç´ãªåçããã人çãæ±ºãã¦ãããã¤ã³ããªã®ã <br>ï¼ç¨²çåå¤«ï¼ 174</p> 175<p class="100sen"> 176åãä¸çªå¤§äºã«ãã¦ããã®ã¯ãçã»åã»ç¾ãã§ãã 177<br> 178å売ã®å©å®³ã¨ãã£ããã®ããã人éã®è¯èã大äºã«ãããã 179<br> 180ä»ããªãããã£ã¦ãããã¨ã¯ 181<br> 182社ä¼ã®ãå½¹ã«ç«ã£ã¦ãã¾ããã¨èãããã¨ã大äºã§ã<br>ï¼æ³äºæ£ï¼ 183</p> 184<p class="100sen"> 185ææ¥ã«æ»ãè¿ããã¨ãã¦ã 186<br> 187仿¥ãã幸ç¦ã«ãªã£ã¦é ããªãã®ã§ã<br>ï¼ä¸æå¤©é¢¨ï¼ 188</p> 189<p class="100sen"> 190ç¶ãããã¨ã¯é£ãããç¶ãããã¨ã ããèªä¿¡ã«ã¤ãªãã<br>ï¼å°å±±é²ï¼ 191</p> 192<p class="100sen"> 193æåã®é°ã«ã¯ãã¯ãè¦å´ãããã<br>å¨ããå¦å®ããã®ã§ã¯ãªãèªåã¨åãåãäº<br>ï¼HIROï¼ 194</p> 195<p class="100sen"> 196人ã«è£åããããã¨ãªã©ãªããèªåã誤解ãã¦ããã ãã <br>ï¼é«åå¥ï¼ 197</p> 198<p class="100sen"> 199ç¡æå¤¢ä¸ã®æéã®ä¸ã«ããã人çã®å å®ããã<br>ï¼å®è¤å¿ éï¼ 200</p> 201<p class="100sen"> 202人çã¯ã質ååãã§æ±ºã¾ãã¾ã<br>ï¼æ¬ç°å¥ï¼ 203</p> 204<p class="100sen"> 205è²´æ¹ã®ããããè¨åãèªãã人ã¯ä¿¡é ¼ããã«å¤ããªãã 206<br> 207ééããææãã¦ããã人ããä¿¡é ¼ã§ãã<br>ï¼ã½ã¯ã©ãã¹ï¼ 208</p> 209<p class="100sen"> 210ç«æ´¾ãªäººã¯ä½äºã«ãéçã«ãããã©ãããèãã¦ããè¡åã«ç§»ãã 211<br> 212ã¤ã¾ããªã人ã¯ä½äºã«ãå¾ãããã©ãããèãã¦ããè¡åã«ç§»ã<br>ï¼åç°æ¾é°ï¼ 213</p> 214</body></html>

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/09/14 21:02