PHP电影小爬虫(2)

来源:互联网 发布:海豹突击队淘宝有吗 编辑:程序博客网 时间:2024/05/17 13:41
学习了别人的爬虫后自己改的一个,算是又回顾了一下php的使用

我们来利用simple_html_dom的采集数据实例,这是一个PHP的库,上手很容易。
simple_html_dom 可以很好的帮助我们利用php解析html文档。通过这个php封装类可以很方便的解析html文档,对其中的html元素进行操作 (PHP5+以上版本)

下载地址:https://github.com/samacs/simple_html_dom

还是http://paopaotv.com/tv-type-id-5-pg-1.html 这个字母版面 1 <?php

 2 set_time_limit(0); 3 header("Content-Type:text/html;charset=utf-8"); 4 require('../../web crawler/simple_html_dom-master/simple_html_dom.php'); 5 require './config.php'; 6 $DBNA="crawler"; 7 mysql_select_db($DBNA,$link); 8 //获取html数据转化对象 9 $html = file_get_html('http://paopaotv.com/tv-type-id-5-pg-1.html');10 11 //A-Z的字母列表每条数据是在id=letter-focus的div内class=letter-focus=item的12 //dl标签内,用find方法查找即为13 $ListData = $html->find("#letter-focus .letter-focus-item");14 //$listData为数组对象15 $count=0;16 foreach($ListData as $key=>$EachLetterData){17     $LetterData = $EachLetterData->find("dd a");18     foreach ($LetterData as $Letterinfo){19         $count++;20         //影片名称21         $filmName = $Letterinfo->plaintext;22         //echo "<br/>";23         //影片地址24         $filmUrl = $Letterinfo->href;25         $filmUrl="http://www.paopaotv.com".$filmUrl;26         //echo "<br/>";27         //一部影片的地址内容28         $filmInfo = file_get_html($filmUrl);29         //所找信息30         $filmDetail = $filmInfo->find(".info dl");31         foreach($filmDetail as $film){32             $info = $film->find("dd");33             foreach($info as $childinfo){34                 $row[] = $childinfo->plaintext;35             }36         }37         $sql = "insert into movie2(name,url,actor,status,form,location,label,director,time,year) values('{$filmName}','{$filmUrl}',38         '{$row[0]}','{$row[1]}','{$row[2]}','{$row[3]}','{$row[4]}','{$row[5]}','{$row[6]}','{$row[7]}')";39         echo "<pre>";40         echo $sql."<br/>";41         mysql_query($sql);        42         $row=null;43         //if($count==3){goto a;}44         echo "<br/>";45     }46     //echo "<br/>";47 }48 a:
关于自己遇到的问题:
 字符编码的问题,uft-8又一次坑了我,之后在config.php中加了set names uft8才解决,问题是有时候加就灵,有时候就没有。。。菜鸟语录
原创粉丝点击