PHP 采集心得技巧


Posted in PHP onMay 15, 2009

1.获取远程文件源代码(file_get_contents或用fopen).
2.分析代码得到自己想要的内容(这里用正规匹配,一般是得到分页)。
3.跟根得到的内容进行下载入库等操作。

在这里第二步有可能要重复的操作好几次,比如说要先分析一下分页地址,在分析一下内页的内容才能取得我们想要的东西。

代码:

记的以前发部过部分的代码今天我在这里在简单的发部一下

复制PHP内容到剪贴板

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 需要掌握的东西 不做浮躁的人
Dec 28 PHP
PHP+MYSQL会员系统的登陆即权限判断实现代码
Sep 23 PHP
openflashchart 2.0 简单案例php版
May 21 PHP
浅谈php serialize()与unserialize()的用法
Jun 05 PHP
PHP 读取大文件的X行到Y行内容的实现代码
Jun 24 PHP
php开发工具有哪五款
Nov 09 PHP
关于PHP中Session文件过多的问题及session文件保存位置
Mar 17 PHP
Yii 2.0自带的验证码使用经验分享
Jun 19 PHP
php基于数组函数实现关联表的编辑操作示例
Jul 04 PHP
深入理解Yii2.0乐观锁与悲观锁的原理与使用
Jul 26 PHP
PHP实现验证码校验功能
Nov 16 PHP
PHP生成指定范围内的N个不重复的随机数
Mar 18 PHP
DISCUZ 论坛管理员密码忘记的解决方法
May 14 #PHP
PHP获取当前文件所在目录 getcwd()函数
May 13 #PHP
php 购物车实例(申精)
May 11 #PHP
PHP 编写的 25个游戏脚本
May 11 #PHP
PHPMyAdmin 快速配置方法
May 11 #PHP
PHP 在线翻译函数代码
May 07 #PHP
PHP SQLite类
May 07 #PHP
You might like
php获取错误信息的方法
2015/07/17 PHP
Centos7 Yum安装PHP7.2流程教程详解
2019/07/02 PHP
用YUI做了个标签浏览效果
2007/02/20 Javascript
JavaScript随机排序(随即出牌)
2010/09/17 Javascript
javascript复制对象使用说明
2011/06/28 Javascript
在JS中解析HTML字符串示例代码
2014/04/16 Javascript
JavaScript代码应该放在HTML代码哪个位置比较好?
2014/10/16 Javascript
深入理解JavaScript系列(40):设计模式之组合模式详解
2015/03/04 Javascript
jQuery实现的支持IE的html滑动条
2015/03/16 Javascript
javascript css红色经典选项卡效果实现代码
2016/05/17 Javascript
BootStrap智能表单实战系列(十一)级联下拉的支持
2016/06/13 Javascript
javascript动画系列之模拟滚动条
2016/12/13 Javascript
Node.js之网络通讯模块实现浅析
2017/04/01 Javascript
jQuery 利用ztree实现树形表格的实例代码
2017/09/27 jQuery
Vuejs实现购物车功能
2017/11/05 Javascript
微信小程序实现流程进度的图样式功能
2018/01/16 Javascript
[19:59]2014DOTA2国际邀请赛 IG战队纪录片
2014/08/07 DOTA
Python中用Descriptor实现类级属性(Property)详解
2014/09/18 Python
提升Python程序运行效率的6个方法
2015/03/31 Python
用实例分析Python中method的参数传递过程
2015/04/02 Python
python+PyQT实现系统桌面时钟
2020/06/16 Python
python实现QQ空间自动点赞功能
2019/04/09 Python
python读取并定位excel数据坐标系详解
2019/06/26 Python
解决Python数据可视化中文部分显示方块问题
2020/05/16 Python
Python Web项目Cherrypy使用方法镜像
2020/11/05 Python
教师的实习鉴定
2013/12/15 职场文书
领导干部廉政承诺书
2014/03/27 职场文书
毕业生就业意向书
2014/04/01 职场文书
小学三年级学生评语
2014/04/22 职场文书
人代会标语
2014/06/30 职场文书
《周恩来的四个昼夜》观后思想汇报范文两篇
2014/09/10 职场文书
计算机实训报告范文
2014/11/05 职场文书
酒店员工管理制度
2015/08/05 职场文书
2016年秋季运动会通讯稿
2015/11/25 职场文书
css3新特性的应用示例分析
2022/03/16 HTML / CSS
Java基础——Map集合
2022/04/01 Java/Android