1、确定采集目标
2、获取目标远程页面内容(curl、file_get_contents)
3、分析页面html源码,正则匹配你需要的内容(preg_match、preg_match_all),这一步最为重要,不同页面正则匹配规则不一样
4、入库
亲,很高兴为你解答:
首先该XML是必须要通过cURL伪造正常的UA才可以访问,否则返回的是HTTP 403。
个人建议是用SimpleXMLElement做, *** 作起来比较方便。
截图如下:
代码如下:
<?php$headers["User-Agent"] = "null"
$headerArr = array()
foreach($headers as $n => $v){
$headerArr[] = $n .':' . $v
}
$ch = curl_init("http://www.cailele.com/static/ssc/newlyopenlist.xml")
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true)
curl_setopt ($ch, CURLOPT_HTTPHEADER , $headerArr)
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true)
$content = curl_exec($ch)
$xml = simplexml_load_string($content)
for($i = 0 $i < count($xml->row) $i++){
foreach($xml->row->attributes() as $k=>$v){
echo " " . $k . " => " . $v
}
echo "<br />"
}
?>
-----------------------------------
如有疑问欢迎追问!
满意请点击右上方【选为满意回答】按钮
只举例说明,生产环境你自己根据情景去搞$url = 'www.domain.com'
$content = file_get_content($url)//抓取网页全部内容
preg_match( string pattern, string subject [, array matches ] )//正则获取自己需要的内容
入库~
完事了。。。
当然,情形复杂,例如需要登录,采集目标限制等问题,这再说...
实际使用的时候,可以直接使用Snoopy类,提供好多方法供使用,比自己去造轮子要安全,当然,你可以在她的基础上再去造轮子~~~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)