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 相关文章推荐
PHP4实际应用经验篇(2)
Oct 09 PHP
php 特殊字符处理函数
Sep 05 PHP
php中的三元运算符使用说明
Jul 03 PHP
PHP源代码数组统计count分析
Aug 02 PHP
php打开文件fopen函数的使用说明
Jul 05 PHP
浅析application/x-www-form-urlencoded和multipart/form-data的区别
Jun 22 PHP
一个图片地址分解程序(用于PHP小偷程序)
Aug 23 PHP
php截取中文字符串函数实例
Feb 23 PHP
实例讲解如何在PHP的Yii框架中进行错误和异常处理
Mar 17 PHP
PHP将数据导出Excel表中的实例(投机型)
Jul 31 PHP
PHP 多进程与信号中断实现多任务常驻内存管理实例方法
Oct 04 PHP
laravel 解决groupBy时出现的错误 isn't in Group By问题
Oct 17 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
php4的session功能评述(三)
2006/10/09 PHP
zf框架的session会话周期及次数限制使用示例
2014/03/13 PHP
php实现无限级分类查询(递归、非递归)
2016/03/10 PHP
在Win2003(64位)中配置IIS6+PHP5.2.17+MySQL5.5的运行环境
2016/04/04 PHP
php模式设计之观察者模式应用实例分析
2019/09/25 PHP
php实现将数组或对象写入到文件的方法小结【三种方法】
2020/04/22 PHP
收集的网上用的ajax之chat.js文件
2007/04/08 Javascript
科讯商业版中用到的ajax空间与分页函数
2007/09/02 Javascript
jquery向.ashx文件post中文乱码问题的解决方法
2011/03/28 Javascript
JavaScript实现页面滚动图片加载(仿lazyload效果)
2011/07/22 Javascript
今天是星期几的4种JS代码写法
2013/09/17 Javascript
jQuery解析Json实例详解
2015/11/24 Javascript
Bootstrap基本插件学习笔记之模态对话框(16)
2016/12/08 Javascript
Bootstrap和Java分页实例第一篇
2016/12/23 Javascript
Vue2路由动画效果的实现代码
2017/07/10 Javascript
AngularJS实现的锚点楼层跳转功能示例
2018/01/02 Javascript
Layui 导航默认展开和菜单栏选中高亮设置的方法
2019/09/04 Javascript
Python使用plotly绘制数据图表的方法
2017/07/18 Python
Python多进程multiprocessing.Pool类详解
2018/04/27 Python
python应用文件读取与登录注册功能
2019/09/23 Python
python GUI库图形界面开发之PyQt5控件QTableWidget详细使用方法与属性
2020/02/25 Python
使用python matplotlib 画图导入到word中如何保证分辨率
2020/04/16 Python
Python多线程正确用法实例解析
2020/05/30 Python
真正了解CSS3背景下的@font face规则
2017/05/04 HTML / CSS
基于canvas使用贝塞尔曲线平滑拟合折线段的方法
2018/01/10 HTML / CSS
KIKO MILANO西班牙官网:意大利领先的化妆品和护肤品品牌
2019/05/03 全球购物
英国银首饰公司:e&e Jewellery
2021/02/11 全球购物
Java中实现多态的机制
2015/08/09 面试题
心得体会开头
2014/01/01 职场文书
新年爱情寄语
2014/04/08 职场文书
社团活动总结范文
2014/04/26 职场文书
城市轨道交通工程职业生涯规划书范文
2014/09/16 职场文书
店铺转让协议书
2014/12/02 职场文书
领导新年致辞2016
2015/07/29 职场文书
2016党校培训心得体会
2016/01/07 职场文书
详解 TypeScript 枚举类型
2021/11/02 Javascript