1.获取远程文件源代码(file_get_contents或用fopen).
2.分析代码得到自己想要的内容(这里用正规匹配,一般是得到分页)。
3.跟根得到的内容进行下载入库等操作。
在这里第二步有可能要重复的操作好几次,比如说要先分析一下分页地址,在分析一下内页的内容才能取得我们想要的东西。
代码:
记的以前发部过部分的代码今天我在这里在简单的发部一下
PHP代码:
@$nl=file_get_contents($rs[ url //抓取远程内容 preg_match_all( /var url = gameswf/(.*?).swf /is ,$nl,$connect);//进行正规匹配取得自己要的内容 mysql_query( insert ......插入数据库部分
上面的代码就是所有采集要用到的代码了,当然大家也可以用fope来作,我个人喜欢用file_get_contents。
下面在共享一下我的下载图片flash到本地的办法,太简单了两行代码
PHP代码:
if(@copy($url,$newurl)){ echo ok }
在论坛上以前还发过一个图片下载函数这会也放上来给大家
PHP代码:
/*本存图片函数*/ function getimg($url,$filename){ /*判断图片的url是否为空,如果为空停止函数*/ if($url== ){ return false; /*取得图片的扩展名,存入变量$ext中*/ $ext=strrchr($url, . /*判断是否是合法的图片文件*/ if($ext!= .gif $ext!= .jpg ){ return false; /*读取图片*/ $img=file_get_contents($url); /*打开指定的文件*/ $fp=@fopen($filename.$ext, a /*写入图片到指点的文件*/ fwrite($fp,$img); /*关闭文件*/ fclose($fp); /*返回图片的新文件名*/ return $filename.$ext; }
共享一下个人的采集心德:
1.不采那些作防盗链了的站,其实可以作假来路但是这样的站采集成本太高
2.采集尽量快的站,最好在本地进行采集
3.采集时有很多时候可以先把一部分数据存入数据库,等以后进行下一步的处理。
4.采集的时候一定要作好出错处理,我一般都是如果采集三次没有成功就跳过。以前经常就因为一条内容不能采就卡在那里一直的采。
5.入库前一定要作好判断,检查内容的合法,过滤不必要的字符串。
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP !
相关推荐:
关于PHP字典树的定义与实现方法
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
新闻热点
疑难解答