<?php
function listtitle( $url) {
$fp = fopen($url, "r" );while(!feof($fp))$contents.=fread($fp,1024);fclose($fp);
$pattern="|<a\s+?href=\"([^\"]+?)\"[^>]*?>\s*?(.+)\s*?</a>|iU";
preg_match_all($pattern,$contents, $regArr, PREG_SET_ORDER);
for($i=0;$i<count($regArr);$i++){
echo "Url:".$regArr[$i][1]."<br>";
echo "Text:".$regArr[$i][2]."<br>";
}
}
listtitle("http://www.csdn.net/expert/");
?>
function listtitle( $url) {
$fp = fopen($url, "r" );while(!feof($fp))$contents.=fread($fp,1024);fclose($fp);
$pattern="|<a\s+?href=\"([^\"]+?)\"[^>]*?>\s*?(.+)\s*?</a>|iU";
preg_match_all($pattern,$contents, $regArr, PREG_SET_ORDER);
for($i=0;$i<count($regArr);$i++){
echo "Url:".$regArr[$i][1]."<br>";
echo "Text:".$regArr[$i][2]."<br>";
}
}
listtitle("http://www.csdn.net/expert/");
?>
就这两个问题。
<?php
function listtitle($url,$key) {
$contents = implode("", file($url));
$pattern="|<a\s+?href=\"([^\"]+?)\"[^>]*?>\s*?(.+)\s*?</a>|iU";
preg_match_all($pattern,$contents, $regArr, PREG_SET_ORDER);
$j=0;
for($i=0;$i<count($regArr);$i++){
if(ereg($key,htmlspecialchars($regArr[$i][2]))){
$titles[$j]["title"]=$regArr[$i][2];
$titles[$j]["url"]=$regArr[$i][1];
$j++;
}
}
for($i=0;$i<count($titles);$i++){
if(trim($titles[$i]["title"])=="") continue;
echo "<font color=blue><b>链接:</b></font>".$titles[$i]["url"]."<br>";
echo "<font color=red><b>标题:</b></font>".strip_tags($titles[$i]["title"])."<br>";
}
}
listtitle("http://app.china.com/business/inf/srch.php?keys=中国","中国");
?>
因为有些是a href='(单引号)',所以修正如下
对于是否含有关键字,自己锻炼一下了
<?php
function listtitle( $url) {
$fp = fopen($url, "r" );while(!feof($fp))$contents.=fread($fp,1024);fclose($fp);
$pattern="/<a\s+?href=(\"|\')??([^\"\']+?)(\"|\')??[^>]*>\s*?(.+)\s*?<\/a>/iU";
preg_match_all($pattern,$contents, $regArr, PREG_SET_ORDER);
for($i=0;$i<count($regArr);$i++){
echo "Url:".$regArr[$i][2]."<br>";
echo "Text:".$regArr[$i][4]."<br>";
}
}
listtitle("http://www.csdn.net/expert/");
?>
好奇怪,不能从阿里巴巴中国上提取信息,http://china.alibaba.com/bin/search 也不知道文件的类型是什么,只知道是search
它的查询form和action就是http://china.alibaba.com/bin/search
每个网站都不同,分析起来很麻烦
这段代码还比较好理解,只是不知道<\/\1>里面为什么要有个1 用a不行吗?
哪位解释一下
你的那个例程只能从一个网站搜索信息,如果从多个网站搜索信息的话,可不可以边搜索边显示搜索结果呢?