Seting User Agent param in PHP Simple HTML DOM Parser

后端 未结 2 1391
半阙折子戏
半阙折子戏 2021-02-02 04:53

Is there any way to include the user agent string along with the request send by PHP Simple HTML DOM Parser?

相关标签:
2条回答
  • 2021-02-02 05:16

    By looking at the code it should be possible by using context streams, something like:

    $context = stream_context_create();
    stream_context_set_params($context, array('user_agent' => 'UserAgent/1.0'));
    file_get_html('http://www.google.com/', 0, $context);
    

    Alternatively you can also set default value in php.ini.

    0 讨论(0)
  • 2021-02-02 05:34

    Thanks Michal Čihař, you are right I just made some changes in the load_file() function of simple_html_dom class and it worked

    // load html from file
        function load_file() {
            $args = func_get_args();
            // Added by Mithun
            $opts = array(
                'http'=>array(
                    'method'=>"GET",
                    'header'=>"Accept-language: en\r\n" .
                    "User-Agent:    Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6\r\n".
                    "Cookie: foo=bar\r\n"
                )
            );
            $context = stream_context_create($opts);
            $args[1] = FALSE;
            $args[2] = $context;
            // End Mithun
            $this->load(call_user_func_array('file_get_contents', $args), true);
        }
    
    0 讨论(0)
提交回复
热议问题