使用PHP从HTML文件中提取链接
使用以下函数从HTML字符串中提取所有链接。
function linkExtractor($html)
{
$linkArray = array();
if(preg_match_all('/]*)[\"\']?[^>]*>(.*?)<\/a>/i', $html, $matches, PREG_SET_ORDER)){
foreach ($matches as $match) {
array_push($linkArray, array($match[1], $match[2]));
}
}
return $linkArray;
}要使用它,只需将网页或文件读入字符串,然后将该字符串传递给函数。以下示例使用PHPCURL函数读取网页,然后将结果传递到该函数中以检索链接。
$url = 'http://www.hashbangcode.com'; $ch = curl_init(); curl_setopt($ch,CURLOPT_URL,$url); curl_setopt($ch,CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12'); curl_setopt($ch,CURLOPT_HEADER,0); curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); curl_setopt($ch,CURLOPT_FOLLOWLOCATION,0); curl_setopt($ch,CURLOPT_TIMEOUT,120); $html = curl_exec($ch); curl_close($ch); echo '' . print_r(linkExtractor($html), true) . '';该函数将返回一个数组,每个元素都是一个包含链接位置和链接包含的文本的数组。
热门推荐
2 红丝绒戚风蛋糕
3 夹心小甜点
4 南瓜甜点
6 粘米粉蒸蛋糕
7 酸奶华夫饼
9 红柚鸡蛋糕
10 葡萄干蛋糕
11 紫薯蛋糕卷
13 纸杯裱花小蛋糕
14 果酱奶酪蛋糕
15 日式樱花蔓越莓大福
16 草莓蛋糕卷
17 卡仕达长崎杯子蛋糕