您当前的位置: 首页 > 知识百科 > php抓取朋友圈发布数据如何实现?

php抓取朋友圈发布数据如何实现?

时间:2023-07-01 14:05 阅读数:61 人阅读 分类:知识百科

  最近小编发现学习PHP语言的人越来越多了,而且大家似乎进度还很快,已经在学习如何用PHP抓取动态网页内容了。今天小编就以抓去微信朋友圈发布的数据为例子,来给大家详细介绍一下PHP抓去动态网页内容的方法,各位小伙伴不要开小差哦。

  $url = "网站地址目录";

  $queryServer = curl_init();

  curl_setopt($queryServer, CURLOPT_URL, $url);

  curl_setopt($queryServer, CURLOPT_HEADER, 0);

  curl_setopt($queryServer, CURLOPT_RETURNTRANSFER, 1);

  curl_setopt($queryServer, CURLOPT_RETURNTRANSFER, true);

  curl_setopt($queryServer, CURLOPT_CONNECTTIMEOUT, 10);

  curl_setopt($queryServer, CURLOPT_TIMEOUT, 30);

  $html = curl_exec($queryServer);

  $html = iconv('UTF-8','GBK//IGNORE',$html); //如果你需要是的数据是utf-8编码的,这一行可以注销,如果需要gbk编码的,请保留.如果出现乱码,就是一行的问题,你自己调着试吧

  //echo $holder;exit; 此处可以输出来测试.

  $html = str_replace(array(" "," "," "),"",$html);

  $preg = '/]+>(.*?)/';

  preg_match_all($preg,$html,$out);

  //匹配每行

  preg_match_all('/]+>(.*?)/',$out[1][0],$tr);

  //匹配每个td

  $result = array();

  $match = '/([^<]+)/U';

  foreach( $tr[0] as $key => $value ){

  preg_match_all($match,$value,$arr);

  $result[] = $arr[1];

  }

  //输出测试,$result就是你要的数据,至于你要怎么输出显示格式,那就随心调就好了。

  foreach( $result as $key => $value ){

  echo implode(" ",$value);

  echo "

  ";

  }

  exit;

  什么叫采集?

  就是使用PHP程序,把其他网站中的信息抓取到我们自己的数据库中、网站中。

  PHP制作采集的技术:

  从底层的socket到高层的文件操作函数,一共有3种方法可以实现采集。

  1. 使用socket技术采集:

  socket采集是最底层的,它只是建立了一个长连接,然后我们要自己构造协议字符串去发送请求。

  例如要想获取这个页面的内容,tv.youku/?spm=a2hww.20023042.topNav.5~1~3!2~A,用socket写如下:

  [php] view plain copy

  

  //连接,$error错误编号,$errstr错误的字符串,30s是连接超时时间

  $fp=fsockopen(".youku",80,$errno,$errstr,30);

  if(!$fp) die("连接失败".$errstr);

  //构造协议字符串,因为socket编程是最底层的,它还没有使用协议

  $="GET /?spm=a2hww.20023042.topNav.5~1~3!2~A HTTP/1.1 "; // 表示前面的是一个命令

  $.="Host:.youku "; //请求的主机

  $.="Connection:close "; // 连接关闭,最后一行要两个

  //发送这个字符串到服务器

  fwrite($fp,$,strlen($));

  //接收服务器返回的数据

  $data='';

  while (!feof($fp)) {

  $data.=fread($fp,4096); //fread读取返回的数据,一次读取4096字节

  }

  //关闭连接

  fclose($fp);

  var_dump($data);

  ?>

  打印出的结果如下,包含了返回的头信息及页面的源码:

  以上就是今天微微风小编给大家带来的php抓取朋友圈发布数据如何实现?的内容,PHP是一种十分强大的服务器端语言,能够实现动态网页,还能很好的与前端开发语言进行数据互通,是一种十分快捷方便的高级编程语言,大家一定要仔细学习哦。

  推荐阅读:

  区块链对世界的重新定义引关注

  跟女生表白最感动的话大全

  2018微信8个字微信签名大全