关于PHP自定义采集图片脚本

上次看了韩顺平老师的自定义数据采集脚本视频,自己手痒了也想自己写一个玩玩,不料!就是这几十行的代码,我整整敲了一天才算完美过关,各种坑爹的事情不由分说,下面我来谈谈我深刻的体会!

因为是自己看着视频敲的,思路跟着视频走,但是还是很容易写错字符,或者错漏字符,当然了,我也没庆幸一遍就写完整(态度还是蛮好的),比如,在拼接GET请求的时候丢了拼接符号(.),稍微一看没错啊!心里肯定是人家防采集了(屁大点的网站,防个毛的采集),这个退缩的理由,让我在采集这边一直不敢去深究,采集要用到正则,而正则只是在我开始学习PHP的时候,看过一点点,知道是个怎么回事,其他的就不了了之,心里没底气呀,还好经过昨天跟今天,通过Discuz论坛的DXC采集跟Dedecms后台采集的反复研究,最终能够采集到数据,我还是挺欣慰的,这一关算是过了吧。

再其次,还是在模拟浏览器发送请求的时候,其中Host中的ost字符我一直跟着视频用的大写(HOST),但是老师视频里是能够正常请求相应到数据的,而我就是死活弄不出来,差点就放弃了,估计又要陷入深深的自卑当中吧,还好不厌其烦的我,用火狐Debug了一下,根据发送请求字符一个个对,当把host改过来就通过了,那一刻我想死的冲动都有了。

这个也许是最坑爹的吧,耽误了我几个小时,但是,下面还有更坑爹的,截掉头部信息,以及后面的几个字符串,才能获取到图片流的真正二进制码啊,视频里讲是后面11个字符,我也想过可能不一样,就把8到15都试了一遍,采集到的图片还是无效显示,接着又用狐火右键源码看了一把,把字符从0开始截取,最终测试结果是头部后面4个字符,才是图片的二进制码,调这个我也差点疯了,先是head(Content-Type:image/jpeg)浏览器显示图片,再是写入到text文件中看代码,又是Unicode编码保存等问题,又是PHP流的问题,跟着别的知识倒是看了不少,也许是视频老了吧,各种不合适。

所以,这些关键技术,还是要自己一点点过关才行,下面贴一下坑爹的代码:



你可能感兴趣的:(PHP)