python爬虫入库到帝国cms_帝国小说连载系统合理利用第三方云爬虫缓存章节内容...
帝国CMS技术互助群:540946827 一帮大神带你装逼带你飞!还有漂亮的妹纸陪你玩哦!
帝国小说连载系统如何快速有效的将章节内容缓存至本地呢?
采集初期,为了速度,我们可以批量采集书籍入库,暂不进行内容入库,但是真正想运营起来,内容缓存至本地是必不可少的一步!
那么如何有效的进行缓存呢?
十几万本书,这个章节可是好几千万上亿章,数据量较为庞大,进程少了,速度慢,进程大了,服务器难以支撑。
这里我测试过多种办法,最开始是利用系统自身来进行处理,即通过插件的形式,批量进行请求,线程设置8以内,速度虽有明显提升,但是速度还是不够,如果设置为20个线程以上,速度能明显感觉提升。不过服务器资源不够,容易跑死。
因为线程,需要服务器去承担,缓存内容的时候还是需要服务器去处理。
所以,咱们换一个思维,把请求交给外部,我们服务器只做缓存处理,这样可以节省一大部分资源。
另外,这个请求可以分发给多个云平台,让他们定时去处理,我们只需要做好数据接口即可。
下面直接上代码:
require ('../class/connect.php');
require ('../class/db_sql.php');
require ('../class/functions.php');
require ('../class/t_functions.php');
$link = db_connect();
$empire = new mysqlquery();
$id=RepPostStr($_GET['id']);
$bookid=RepPostStr($_GET['bookid']);
$page=RepPostStr($_GET['page']);
$page=$page?$page:1;
$line=1000;
$start=($page-1)*$line;
$host=$public_r['add_domain'].'/e/action/getlocal.php';
if($id&&$bookid){
$r=$empire->fetch1("select id,islocal,bookid,newstext,urlfrom from {$dbtbpre}ecms_chapter where bookid='$bookid' and id='$id'");
$ret=GetChapterContents($r);
echo json_encode($ret);
}elseif($bookid){
$sql=$empire->query("select id from {$dbtbpre}ecms_chapter where bookid='{$bookid}' and islocal=0 order by pxid asc");
while($r=$empire->fetch($sql)){
$list.='{'.$host.'?bookid='.$bookid.'&id='.$r['id'].'},';
}
echo $list;
}else{
$sql=$empire->query("select id from {$dbtbpre}ecms_book order by id asc limit $start,$line");
while($r=$empire->fetch($sql)){
$list.='{'.$host.'?bookid='.$r['id'].'},';
}
echo $list;
}
db_close();
$empire = null;
?>
安装方法,将该文件放置于/e/action/目录下,命名为“getlocal.php”即可。
如何使用,请自我尝试。
本文系剖要网原创文章,转载请注明来源!
如对本文有疑问,请提交到交流社区,广大热心网友会为你解答!! 点击进入社区
打赏一下,我们会为大家提供更多优质资源!
您的打赏将全部用来搜集更多优质资源!
扫码打赏,你说多少就多少
打开微信扫一扫,即可进行扫码打赏哦
python爬虫入库到帝国cms_帝国小说连载系统合理利用第三方云爬虫缓存章节内容...相关推荐
- 杰奇数据库mysql_杰奇小说连载系统 v1.7
杰奇小说连载系统安装说明: 一.系统需求 基本需求:php+mysql+zend optimizer 推荐配置: OS: windows/linux/freebsd WEB: iis/apache/l ...
- python百度aip移动目标监控系统_python利用百度云接口实现车牌识别
一个小需求---实现车牌识别. 目前有两个想法 调云在线的接口或者使用SDK做开发(配置环境和编译第三方库很麻烦,当然使用python可以避免这些问题) 自己实现车牌识别算法(复杂) ! 一开始准备使 ...
- 【爬虫】关于企业信用信息公示系统-加速乐最新反爬虫机制
( ̄▽ ̄)~*又得半夜修仙了,作为一个爬虫小白,花了3天时间写好的程序,才跑了一个月目标网站就更新了,是有点悲催,还是要只有一天的时间重构. 升级后网站的层次结构并没有太多变化,表面上是国家企业信用信 ...
- python超简单超基础的免费小说爬虫
python超简单超基础的免费小说爬虫 需要准备的环境 选取网页 思路 代码 总结 需要准备的环境 1.python 3.0及以上皆可 2.requests库,os,re 选取网页 找一个免费的小说网 ...
- python爬去百度百科词条_Python爬虫入门学习实践——爬取小说
本学期开始接触python,python是一种面向对象的.解释型的.通用的.开源的脚本编程语言,我觉得python最大的优点就是简单易用,学习起来比较上手,对代码格式的要求没有那么严格,这种风格使得我 ...
- python爬虫之爬取起点中文网小说
python爬虫之爬取起点中文网小说 hello大家好,这篇文章带大家来制作一个python爬虫爬取阅文集团旗下产品起点中文网的程序,这篇文章的灵感来源于本人制作的一个项目:电脑助手 启帆助手 ⬆是项 ...
- python爬虫爬取《斗破苍穹》小说全文
网络爬虫的入门学习:python爬虫爬取小说全文 python爬虫首先导入基本爬虫库requests:import requests,安装命令pip install requests,使用pychar ...
- python爬虫实例之——多线程爬取小说
之前写过一篇爬取小说的博客,但是单线程爬取速度太慢了,之前爬取一部小说花了700多秒,1秒两章的速度有点让人难以接受. 所以弄了个多线程的爬虫. 这次的思路和之前的不一样,之前是一章一章的爬,每爬一章 ...
- Python带进度条的小说爬虫(笔趣网爬小说—简约版)
Python带进度条的小说爬虫(笔趣网爬小说-简约版) 准备: BeautifulSoup.selenium.PhantomJS 注意PhantomJS安装方式 这里附上安装方式连接: https:/ ...
最新文章
- 压缩,解压文件|*.tar.gz/.tar.bz2 文件
- python编程题-分享13个python编程笔试题
- Linux-权限管理相关操作
- LNMP一键安装包在安装完成后的一些安全设置
- c16语言延时函数delay,《linux设备驱动开发详解》笔记——10中断与时钟
- 一文讲透数据库,以后别说你不懂数据库
- libevent 接收TCP连接
- 置换矩阵(permutation matrix)
- Atiitt 技术部的基本发展战略 attilax总结 艾龙 著 1. 战略的解释,即是 大概纲领与方法	1 2. 技术的基本战略是,培训,吸收与改造,recos,预研,技术储备	1 2.1.
- 关于微信拼车小程序开发的需求分析(需求获取)
- 佳能Canon imageCLASS MF4712 打印机驱动
- 密码在智能汽车数据安全领域的应用研究报告
- Hexo + yilia 主题实现文章目录
- unity animator动画播放完毕后执行
- peU盘ud区和efi区如何共用wim文件
- Python小白自问自答
- 微信小程序-店内点餐小程序
- fatal error LNK1120: 1个无法解析的外部命令
- PIL gif 图片加文字 python
- PS制作红色拟物化时钟icon图标