实战使用QueryListPHP框架采集AE博客文章
介绍
本次为大家带来QueryListPHP框架的深度用法
采集内容有
- 文章标题
- 文章链接
- 发布作者
- 发布时间
- 下载链接(自动获取下载链接通道及名字)
- 文章ID(用来做是否重复判断)
- 自动图片转MD语法
实现代码
use QL\QueryList; $client = new GuzzleHttp\Client(); $res = $client->request('GET', 'http://www.aeink.com'); $html = (string)$res->getBody(); $title = QueryList::html($html)->find('.excerpt')->map(function ($Row) { global $client; $href = $Row->find("header>h2>a")->attr("href"); preg_match('/www.aeink.com\/(\d+)/', $href, $matches); $id = $matches[1]; $title = $Row->find("header>h2>a")->text(); $res = $client->request('GET', $href); $html = (string)$res->getBody(); $date = str_replace("日期:", "", QueryList::html($html)->find(".article-meta>span:first")->text()); $author = QueryList::html($html)->find(".article-meta span:eq(1)")->text(); $article_content = QueryList::html($html)->find(".article-content"); $down = $article_content->find("#down-tipid>strong a")->attr("href"); $article_content->find('.paydown,.post-copyright')->remove(); $content = $article_content->html(); $details = preg_replace_callback('/<img.*?src="(.*?)".*?>/is', function ($text) { global $title; return "\n" . '![' . $title . '](' . $text[1] . ')' . "\n"; }, $content); $details = preg_replace_callback('/<style>(.*?)<\/style>/is', function ($text) { return ""; }, $details); $text = QueryList::html($details)->find("")->text(); $res = $client->request('GET', $down); $html = (string)$res->getBody(); $dw = QueryList::html($html)->find(".panel-body a")->map(function ($R) { return [ 'name' => $R->text(), 'href' => $R->href ]; })->all(); return [ 'thumb' => $Row->find(".focus img")->attr('src'), 'title' => $title, 'href' => $href, 'id' => $id, 'date' => $date, 'author' => $author, 'text' => $text, 'dw' => $dw ]; }); print_r($title->all());
说明
AE博客安装有waf(防火墙)建议三个小时执行一次,可以使用Redis缓存。
相关说明:
1、VIP会员无限制任意下载,免积分。立即前往开通>>
2、下载积分可通过日常 签到、绑定邮箱 以及 积分兑换 等途径获得!
3、本站资源大多存储在云盘,如出现链接失效请评论反馈,如有密码,均为:www.ipipn.com。
4、所有站内资源仅供学习交流使用。未经原版权作者许可,禁止用于任何商业环境,否则后果自负。为尊重作者版权,请购买正版作品。
5、站内资源来源于网络公开发表文件或网友分享,如侵犯您的权益,请联系管理员处理。
6、本站提供的源码、模板、软件工具等其他资源,都不包含技术服务,请大家谅解!
7、源码、模板等资源会随着技术、坏境的升级而存在部分问题,还请慎重选择。
PS.源码均收集自网络,如有侵犯阁下权益,请发信件至: [email protected] .
源站网 » 实战使用QueryListPHP框架采集AE博客文章