大佬教程收集整理的这篇文章主要介绍了php 爬取超链接,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
<?PHP //$page=file_get_contents("http://www.kmycjng.com/lsmdcx.aspx?sheng=4C26F8901DC98154&c=D39BF6B55B1AA80F"); //preg_match(); header("Content-type: text/html;charset=utf-8"); //连接数据库 $link = MysqLi_connect("localhost", "root", "root"); MysqLi_SELEct_db("crawler"); MysqLi_query('set names utf8'); function crawler($url) { $contents = file_get_contents($url); $content = iconv("gb2312", "utf-8", $contents); $data1 = preg_replace("'([\r\n])[\s]+'", "", $content); preg_match('/<h1>(.*?)<\/h1>/', $data1, $arr); $title = $arr[1]; //标题 $sql = "SELECT * FROM links WHERE url ='{$url}'"; $result = MysqLi_query($sql); $row = MysqLi_fetch_array($result); if ($row) { $sqlr = "updatE links SET status=1 , title='{$titlE}' WHERE id = {$row['id']}"; } else { $sqlr = "INSERT INTO links(url,titlE) VALUES ('$url','$title')"; } $result = MysqLi_query($sqlr); //获取页面所有连接 $pattern = "/< a href=\"(.*?)\"/"; preg_match_all($pattern, $content, $matches); $links = $matches[1]; foreach ($links as $value) { $sql = "SELECT * FROM links WHERE url ='{$value}'"; $result = MysqLi_query($sql); $row = MysqLi_fetch_array($result); if (!$row) { $sqls = "INSERT INTO links(url) VALUES ('$value')"; $result = MysqLi_query($sqls); } } //先查当前url,并写入数据 //再把当前页面找到的url写入表 } $url = "http://www.xingwei.edu.cn/"; while (true) { crawler($url); //获取数据表中没有爬取的连接 $sql = "SELECT * FROM links WHERE status = 0 order by id asc LIMIT 1"; $result = MysqLi_query($sql); $row = MysqLi_fetch_array($result); if (!$row) { break; } else { $url = $row['url']; } }
以上是大佬教程为你收集整理的php 爬取超链接全部内容,希望文章能够帮你解决php 爬取超链接所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。