1

我在 PHP 中使用 cURL 来废弃网页。我需要得到的一些单词是日语字符。我还使用 Simple DOM Parser 来帮助我轻松地解析源代码。我在弄清楚如何正确获取日文字符时遇到了一些麻烦。每次我在我的页面上运行以下脚本时,我都会发现没有收到任何数据。我在想我需要以某种方式将字符转换为 UTF-8 标准,但我不完全确定该怎么做。它可以很好地抓取所有英文字符,所以我知道脚本确实有效。它只是不适用于其他角色。有人认为他们可以帮助我吗?我还包含了一个我正在废弃的源代码的示例。

代码:

        $base = '{website url}';

        $curl = curl_init();
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($curl, CURLOPT_HEADER, array('User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:19.0) Gecko/20100101 Firefox/19.0'));
        curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
        curl_setopt($curl, CURLOPT_URL, $base);
        curl_setopt($curl, CURLOPT_REFERER, $base);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
        $str = curl_exec($curl);
        curl_close($curl);

        // Create a DOM object
        $html = new simple_html_dom();
        // Load HTML from a string
        $html->load($str);

        foreach($html->find('div.holder') as $element){
            if($element->find('div.img-small', 0)){

                $title = '';
                $image = '';

                foreach($element->find('a[href]') as $tempElement){
                    if($tempElement->find('img')){
                        $image = $tempElement->find('img')->src;
                    } else {
                        $title = $tempElement->innertext;

                    }
                }

                echo $title.'<br/>';





            }       
        }

数据:

<div class="holder">
    <div class="img-small">
        <a href="/link/abcd"><img src="/images/image.png"></a>
    </div>

    <div>
        <div>
            <img title="This is a title" class="valign" src="/images/image.png"><b>
                <a href="/link/1234abcd">{Japanese characters}</a>
        </div>          
    </div>
</div>
4

1 回答 1

0

把它放在页面顶部

<head>
<META http-equiv="Content-Type" Content="text/html; charset=euc-jp">
</head>
于 2013-10-10T16:20:25.360 回答