首页 > 语言 > PHP > 正文

PHP获取网页所有连接的方法(附demo源码下载)

2024-05-04 23:44:46
字体:
来源:转载
供稿:网友

这篇文章主要介绍了PHP获取网页所有连接的方法,涉及PHP基于curl针对网页的操作技巧,并带附demo源码供读者下载参考,需要的朋友可以参考下

本文实例讲述了PHP获取网页所有连接的方法。分享给大家供大家参考,具体如下:
 

  1. function getHtml($url$charset='utf-8'
  2.   $curl = curl_init(); 
  3.   //curl_setopt($curl, CURLOPT_HTTPHEADER, array('X-FORWARDED-FOR:192.168.168.1', 'CLIENT-IP:192.168.168.1'));//IP 
  4.   curl_setopt($curl, CURLOPT_URL, $url); 
  5.   curl_setopt($curl, CURLOPT_REFERER, "");  //来路 
  6.   $user_agent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : 'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.43 Safari/537.31'
  7.   curl_setopt($curl, CURLOPT_USERAGENT, $user_agent); 
  8.   // 只需返回HTTP header 
  9.   // curl_setopt($curl, CURLOPT_HEADER, 1); 
  10.   // 页面内容我们并不需要 
  11.   // curl_setopt($curl, CURLOPT_NOBODY, 1); 
  12.   // 返回结果,而不是输出它 
  13.   curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
  14.   $html = curl_exec($curl); 
  15.   //$info = curl_getinfo($curl); 
  16.   //echo var_dump($info); 
  17.   if ($html === false) { 
  18.     //echo "cURL Error: " . curl_error($ch); 
  19.     return ''
  20.   } 
  21.   curl_close($curl); 
  22.   if ($charset != 'utf-8'
  23.   { 
  24.     $html = iconv($charset"UTF-8"$html); 
  25.   } 
  26.   return $html
  27. header("Content-type: text/html; charset=utf-8"); 
  28. include('simple_html_dom.php'); 
  29. // 要打开 extension=php_mbstring.dll 
  30. //$url = 'http://www.baidu.com/s?wd=kaka'; 
  31. $url = 'http://www.163.com/'
  32. $str_html = getHtml($url'gbk'); 
  33. $html = str_get_html($str_html); 
  34. $links = $html->find('a'); 
  35. foreach($links as $link
  36.   $txt = trim($link->plaintext); 
  37.   echo $link->href . '[' . $txt . ']<br>'
  38. $html = null; 

完整实例代码点击此处本站下载。


注:相关教程知识阅读请移步到PHP教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选