博客列表 >ThinkPhp获取百度关键字搜索下的网站排名(QueryList类库)

ThinkPhp获取百度关键字搜索下的网站排名(QueryList类库)

张旭
张旭原创
2019年11月29日 17:28:401374浏览

thinkphp获取百度关键字搜索下的网站排名

1.使用composer安装QueryList

  1. composer require jaeger/querylist

2.引入QueryList到开发类中使用

  1. 编写类文件
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: 张旭
  5. * Date: 2019/11/29
  6. * Time: 17:20
  7. */
  8. namespace app\index\controller;
  9. use QL\QueryList;
  10. use think\facade\View;
  11. class Index
  12. {
  13. public function WebTop()
  14. {
  15. $url='zhangxuu.com'; //要检测的域名
  16. $rn = 50; //搜索数量
  17. $Keyword='张旭php'; // 搜索关键字
  18. $html = QueryList::get('https://www.baidu.com/s?wd='.$Keyword.'&rn='.$rn);
  19. $urls = $html->find('#content_left>.c-container>.f13>.c-showurl')->texts()->toArray();
  20. foreach ($urls as $k => $v){
  21. $urls[$k] = str_replace('http://','',$urls[$k]);
  22. $urls[$k] = str_replace('https://','',$urls[$k]);
  23. $urls[$k] = str_replace('www.','',$urls[$k]);
  24. $urls[$k] = str_replace('/','',$urls[$k]);
  25. $urls[$k] = str_replace('...','',$urls[$k]);
  26. $urls[$k] = str_replace('"','',$urls[$k]);
  27. $urls[$k] = trim($urls[$k],chr(0xc2) . chr(0xa0));
  28. }
  29. if (!in_array($url,$urls)){
  30. $msg = '在关键字['.$Keyword.']搜索下,您的网站域名'.$url.'百度排名'.$rn.'名开外';
  31. }else{
  32. $urls = array_flip($urls);
  33. $msg = '在关键字['.$Keyword.']搜索下,您的网站域名'.$url.'百度排名为第'.($urls[$url]+1);
  34. }
  35. return $msg;
  36. }
  37. }
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议