php网站制作中curl采集需要注意的一些地方和技巧

PHP网站制作中经常需要采集其他网站的数据,有些细节问题会导致遇到很大麻烦,至于攻防采集在此不细说,下面创新互联记录一下采集过程中的几个要点需要注意的地方
1、首先要获取到对方网址的所有内容,可能你会想到用file_gets_contents来获取,但此函数不适合用于获取远程文件,用于打开本地txt文件还是蛮好用的。那么用什么来获取呢?Curl,这个php的扩展来处理。下面就是一个简单的获取网页内容的基本配置,更多参数配置可以到网上去搜。
php网站制作
2、在采集网页匹配数据时,特别是在列表页,可以先把获取到的对方所有的空格换行等html标签去掉,写起正则来就会容易很多。这里提供一个函数:cul采集函数
3、在获取到对方的数据的时候就要开始正则匹配了,这里介绍几个常有的匹配规则:
一个是任意字符(.*?),另一个是([\s\S]*?)表示包括换行符的任意字符,在匹配过程中够用了。然后选择匹配模式i即可。
4、介绍一下采集的思路,可以先把符合页面的数据下载下来保存为txt文件,再来本地处理就更快一些。还有就是为了避免频繁访问对方网站或数据丢失状态可以加一个while(){}循环或是sleep()暂停几秒来处理。把相关的数据库处理函数要封装好,直接调用。
5、还有一个重要的事情,很多人可能会忽略,就是页面的编码问题,如果对方网站是gbk的编码,则相应的php文件或是用于提交条件的html文件也会是gbk的编码。但是这会存在一个问题,就是发生在gbk的html向gbk的php页面提交中文数据的时候,gbk的php文件可能就不会给你反应,如果你用这些中文数据去匹配的时候会遇到问题。于是要转变思路,utf-8是好的编码模式,所以我们要采用utf-8的编码,而对方的又是gbk的,如何做呢?
$allcontent =iconv('gbk', 'utf-8',removetag(curl_exec($ch)));
上面的这样转换就ok了!所有的都用utf-8

文章名称:php网站制作中curl采集需要注意的一些地方和技巧
URL分享:http://www.csruizhi.cn/view/245071.html

其他资讯

Copyright © 2007-2024 成都优众联杰科技有限公司 All Rights Reserved 蜀ICP备2024116266号
友情链接: 友情链接买卖 成都网站建设 成都app开发公司 关键词优化排名 网站改版公司 移动服务器托管 成都网站托管运营 成都云服务器 高防主机租用 成都机柜租用 营销型网站建设 软文发稿投放平台 成都租用服务器 软文推广 成都服务器租用 DDOS防护 手机网站制作 成都网站制作 成都定制网页设计 整合营销推广 成都网站推广 高防服务器