将Zanox产品Feed下载到服务器

时间:2014-04-27 10:48:16

标签: php xml curl download

经过两天的挣扎,我最后的希望就在你身上。 我正在尝试从Zanox服务器下载一个大的(+/- 160 mb)XML文件。 此文件的下载链接是动态的,不直接指向文件本身。 我正在尝试将此文件下载到我自己的服务器上进行解析,但这对我来说并不适用。 我一直在使用curl,CURLOPT_HEADER设置为0。 你们可以帮助我吗?

问候。

我使用的代码之一:

$fp = fopen("productfeed1.xml", 'w+');
$c = curl_init($url);
curl_setopt($c, CURLOPT_FILE, $fp);  
curl_setopt($c, CURLOPT_HEADER, 0);
curl_setopt($c, CURLOPT_FOLLOWLOCATION, 1);  
$contents = curl_exec($c);
$info = curl_getinfo($c);
fwrite($fp, $contents);
curl_close($c); 
fclose($fp);

1 个答案:

答案 0 :(得分:1)

试一试。 (这对我有用)

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:2.0.1) Gecko/20100101 Firefox/4.0.1");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true );
curl_setopt($ch, CURLOPT_MAXREDIRS, 10 );
curl_setopt($ch, CURLOPT_TIMEOUT, 36000);
curl_exec($ch);