Php采集discuz,discuz.php

/**

* Created by Benjiemin

* Date: 2020/3/6

* Time: 11:14

*/

require ('./vendor/autoload.php');

require ('./aip-php-sdk-2.2.15\AipOcr.php');

use QL\QueryList;

use QL\Ext\Chrome;

$ql = QueryList::getInstance();

// 注册插件,默认注册的方法名为: chrome

$ql->use(Chrome::class);

$ql->chrome(function ($page,$browser) {

$page->goto('https://www.discuz.net/forum.php');

// 这里故意设置一个很长的延长时间,让你可以看到chrome浏览器的启动

sleep(2);

//输入关键词

$username= 'tulouguli';

$password = 'jian168@';

$page->type("input[id='ls_username']",$username);

$page->type("input[id='ls_password']",$password);

$page->click("button[type='submit']");

sleep(1);

$pageImg = 'verify.jpeg';

//获取页面截图

$page->screenshot([

'path' => $pageImg,

'fullPage' => true

]);

//验证码识别

$appId = '9360309';

$apiKey = 'f94FyaKX2LKx0GWBoddFVpxa';

$secretKey = 'oGhM9QqHH6qslErF1LH8etP6Ber5adDz';

$apiOcrModel = new AipOcr($appId, $apiKey, $secretKey);

$verifyRet = $apiOcrModel->basicGeneral( file_get_contents($pageImg ));

var_dump($verifyRet);die;

if(!isset($verifyRet['words_result'][5]['words'])){

echo '识别验证码失败';die;

}

$validateCode = $verifyRet['words_result'][5]['words'];

//等待搜索结果

sleep(3);

//获取结果

$html = $page->content();

//用jquery选择器抽取结果

$rules = array(

'title'=>['#content_left h3 a','text'],//标题

'url'=>['#content_left h3 a','href'],//跳转网址

'description'=>['div .c-abstract','text'],//描述

);

$ql = QueryList::html($html);

$rt = $ql->rules($rules)->query()->getData();

echo json_encode($rt);die;

//如果有需要,可以把$rt入库,以及做其他操作

sleep(10);

$browser->close();

// 返回值一定要是页面的HTML内容

return $html;

},[

'headless' => false, // 启动可视化Chrome浏览器,方便调试

'devtools' => false, // 打开浏览器的开发者工具

])->find('title')->text();

一键复制

编辑

Web IDE

原始数据

按行查看

历史

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值