我用curl模拟访问百度的推广,我的目的是通过cookie来获取里面的json数据,现在情况如下:1、通过模拟登陆到百度推广的网站
2、然后再通过cookie和post参数获取json数据
3、对拿到的json数据进行解析入库现在问题就是:我在入库到一半的时候,代码显示无法拿到json数据了。然后我将脚本重新执行一次,结果是前面那一半的数据也拿不到了(虽然我已经将这一半数据入库了,但我重新获取,按道理来说是有json数据返回的)。现在我的理解是,可能是在取json数据时,curl的访问出问题了(但这应该不是代码问题,因为前面已经获取到了一半的数据了,这种情况就像你上网突然断网了一样)请问各位大侠使用curl时有没有出现过这种情况,求解答!

解决方案 »

  1.   

    不会出现这种情况吧,只有发送的请求完全返回curl才会获取,post一次,会得到一次响应,要不就是完整的要不就是什么都没有。这个不像显示网页,有时候只有一部分载入进来了,一部分不会显示。
      

  2.   

    像3楼说的,现在问题就是在我获取到一半的时候,curl那边没响应了,停止工作了。更悲剧的是,当我重新执行一次,结果连前面获取到的数据都响应不出来了,真纠结啊
      

  3.   

    对, 你请求发得太快,对方临时block你了,
    请求之间sleep个几秒.....