php cnblog,cnblog.php

/**

* Created by PhpStorm.

* User: lenovo

* Date: 2020/8/3

* Time: 15:12

*/

require_once __DIR__ . './vendor/autoload.php';

use QL\QueryList;

use QL\Ext\Chrome;

/**获取列表数据

* @param $ql

* @param $page

*/

function getList($ql,$page){

$page->goto('https://www.cnblogs.com/');

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

sleep(3);

//获取结果

$html = $page->content();

//用jquery选择器抽取结果

$rules = array(

'author'=>['article.post-item-body a.post-item-author','text'],

# 'title'=>['article.post-item-body div.post-item-text a.post-item-title','text'],//跳转网址

# 'url'=>['article.post-item-body div.post-item-text a.post-item-title','href'],//跳转网址

# 'description'=>['article.post-item-body div.post-item-text p.post-item-summary','text'],//描述

);

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

#列表结果

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

file_put_contents('json',json_encode($rt->all()));

echo json_encode( $rt );die;

}

$ql = QueryList::getInstance();

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

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

// 或者自定义注册的方法名

$ql->use(Chrome::class,'chrome');

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

getList($ql,$page);

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

sleep(10);

$browser->close();

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

# return $html;

},[

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

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

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

一键复制

编辑

Web IDE

原始数据

按行查看

历史

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值