Re: Changing User Agent for fopen

From: Date: Fri, 05 Dec 2003 13:10:01 +0000
Subject: Re: Changing User Agent for fopen
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-171979@lists.php.net to get a copy of this message
Gohaku wrote:
There are some pages I would like to extract links from but I can't access the page using the following:
        ini_set('php.user_agent', 'Mozilla/5.0');
    $url = "http://www.google.com/search?q=php";
        $fp = fopen($url,"r");
        $buffer = fread($fp,1000000);
        echo $buffer;
1) The php.ini option is user_agent, not php.user_agent. Changing that has the desired effect. 2) If you want to query google you're better off using the google SOAP API - it's legal for a start. See the following for more info... http://www.google.com/apis/ http://www.devshed.com/Server_Side/PHP/GoogleAPI/page1.html
Also, what is the best number to use when allocating Buffer space for a URL? Is 1000000 too much? Thanks. -Gohaku
3) You're better off looping to get the full contents than trying to 'guess' how big the file will be. Try the following... <?php
    ini_set('user_agent', 'Mozilla/5.0');
    $url = 'http://www.google.com/search?q=php';
    $fp = fopen($url, "r");
    while (!feof($fp))
    {
        $buffer = fread($fp, 1024);
        echo $buffer;
    }
?> -- Stuart

« previous php.general (#171979) next »