Re: Changing User Agent for fopen
| From: | Stuart | 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. -Gohaku3) 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