php 使用crul get 如何抓取淘宝商品页面? 50
测试了几次都没有成功。同样的代码,可以抓取其它购物网站的商品页面,看来淘宝页面是做了手脚了。也百度了一些答案,但没有帮助。例子代码如下:$ch=curl_init();c...
测试了几次都没有成功。同样的代码,可以抓取其它购物网站的商品页面,看来淘宝页面是做了手脚了。
也百度了一些答案,但没有帮助。
例子代码如下:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "X宝商品页面");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
$header[] = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8";
$header[] = "Accept-Encoding: gzip, deflate";
$header[] = "Accept-Language: zh-CN";
$header[] = "Cache-Control: max-age=0";
$header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
$header[] = "Connection: keep-alive";
// $header[] = "Accept-Language: zh-CN,zh;q=0.8,en;q=0.6";
// $header[] = "Cookie: isg=73B0849074EA7F14942163BAED489E51; l=ApCQTfqzJ17Da/gXOlHaSen3INDiEnSj; t=a504d557250dd67bd35762768dbc57e1; cna=LPwaDSEZwR8CATr67ElFiZp9; mt=ci%3D-1_0; thw=cn; v=0; cookie2=1ccaac47c99e290a183da147366f2630";
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.57 Safari/537.36');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
// curl_setopt($ch, CURLOPT_HTTPHEADER, $header); //根据百度的结果,有人提到需要配置cookie,所以用httpwatch工具得到了GET淘宝页面时COOKIE的内容,从而构造了上面的那个cookie,但发现还是不能抓取呀;
$output = curl_exec($ch);
curl_close($ch);
根据百度的结果,有人提到需要配置cookie,所以用httpwatch工具得到了GET淘宝页面时COOKIE的内容,从而构造了上面的那个cookie,但发现还是不能抓取呀;
也有别的同学提了同样的问题: http://zhidao.baidu.com/question/456241827616057285.html
麻烦大神们给指点下。。。解决问题后再追加分数。 展开
也百度了一些答案,但没有帮助。
例子代码如下:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "X宝商品页面");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
$header[] = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8";
$header[] = "Accept-Encoding: gzip, deflate";
$header[] = "Accept-Language: zh-CN";
$header[] = "Cache-Control: max-age=0";
$header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
$header[] = "Connection: keep-alive";
// $header[] = "Accept-Language: zh-CN,zh;q=0.8,en;q=0.6";
// $header[] = "Cookie: isg=73B0849074EA7F14942163BAED489E51; l=ApCQTfqzJ17Da/gXOlHaSen3INDiEnSj; t=a504d557250dd67bd35762768dbc57e1; cna=LPwaDSEZwR8CATr67ElFiZp9; mt=ci%3D-1_0; thw=cn; v=0; cookie2=1ccaac47c99e290a183da147366f2630";
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.57 Safari/537.36');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
// curl_setopt($ch, CURLOPT_HTTPHEADER, $header); //根据百度的结果,有人提到需要配置cookie,所以用httpwatch工具得到了GET淘宝页面时COOKIE的内容,从而构造了上面的那个cookie,但发现还是不能抓取呀;
$output = curl_exec($ch);
curl_close($ch);
根据百度的结果,有人提到需要配置cookie,所以用httpwatch工具得到了GET淘宝页面时COOKIE的内容,从而构造了上面的那个cookie,但发现还是不能抓取呀;
也有别的同学提了同样的问题: http://zhidao.baidu.com/question/456241827616057285.html
麻烦大神们给指点下。。。解决问题后再追加分数。 展开
1个回答
展开全部
首先我对你的php代码没看懂,不熟悉这门语言。我当时确实取到了数据,就是用JAVA第三方类库直接解析url对应的html内容,不过访问频率是个问题,不能太快,否则会封ip,可以考虑用sleep休眠机制类似的。不过总的来说还是不太稳定,效果不好
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询