廖雪峰 php教程,获取廖雪峰老师的Python3教程的php脚本
P.S. 2019年11月15日更新。
昨天一个朋友问我能否帮忙下载廖雪峰老师的python3教程,于是便写了这个php脚本。
在这里非常感谢廖雪峰老师的辛苦努力。<?php
/**
* 获取Python3教程
* 感谢廖雪峰老师
* 教程地址: https://www.liaoxuefeng.com/wiki/1016959663602400
* 命令行下运行
* @AUTHOR: 杨永全
* @E-mail: qt06.com@139.com
* @URL: http://www.qt.hk/
* WEIBO: http://weibo.com/qt06
*/
$base_url = "https://www.liaoxuefeng.com/wiki/1016959663602400/";
//获取教程目录页面
$s = file_get_contents("https://www.liaoxuefeng.com/wiki/1016959663602400");
//匹配出包含教程目录的html片段
preg_match('#
- (.*?)
#is', $s, $rs);
$s1 = $rs[1];
//匹配出目录列表
preg_match_all('#(.+?)#is', $s1,$list);
$cnt = count($list[1]);
for($i=0;$i< $cnt;$i++) {
//命令行打印章节标题和地址
echo ($i + 1) .$list[2][$i] . ',' . $list[1][$i]. "\r\n";
//需要保存的文件名
$filename = iconv('utf-8', 'gbk', ($i + 1) . ' ' . $list[2][$i] . '.txt');
$filename = str_replace('/', '和', $filename);
//获取教程详细内容
$content_url = $base_url . $list[1][$i];
$title = $list[2][$i];
$s = file_get_contents($content_url);
//匹配出详细内容
preg_match('#
.*?
#is',$s,$rs);
$s = $rs[1];
//过滤html标记,并适当处理空行
$s = str_replace(">\n\n\n
$s = strip_tags($s);
$s = str_replace("\n\n\n", "\n\n", $s);
$s = str_replace("\n\n\n", "\n\n", $s);
$s = str_replace("\n\n\n", "\n\n", $s);
//可能会有副作用,导致代码中的\\n被处理
$s = str_replace("\n", "\r\n", $s);
//处理html实体字符
$s = html_entity_decode($s);
//$s = str_replace('>', '>', $s);
//$s = str_replace(''','\"', $s);
//保存到当前目录,windows的文件名必须是gbk
廖雪峰 php教程,获取廖雪峰老师的Python3教程的php脚本相关推荐
- python3获取当前日期_如何在python3中获取当前日期和时间? – Python3教程
在本文中,你将学习如何用Python获取今天的日期和当前的日期和时间,我们还将使用strftime()方法以不同的格式格式化日期和时间. 获取当前日期的方法有很多,我们将使用datetime模块的da ...
- Swift3.0语言教程获取C字符串
Swift3.0语言教程获取C字符串 Swift3.0语言教程获取C字符串,为了让Swift和C语言可以实现很好的交互,开发者可以使用NSString的cString(using:)方法在指定编码格式 ...
- Swift3.0语言教程获取字符串长度
Swift3.0语言教程获取字符串长度 Swift3.0语言教程获取字符串长度,当在一个字符串中存在很多的字符时,如果想要计算字符串的长度时相当麻烦的一件事情,在NSString中可以使用length ...
- python爬虫教程-Python教父|廖雪峰老师官方爬虫教程,13个案例带你全面入门!
原标题:Python教父|廖雪峰老师官方爬虫教程,13个案例带你全面入门! Python简直就是万能的,你用Python都做过哪些事? 用网页看各大网站的VIP视频,用python下载? 用Pytho ...
- 廖雪峰python教程-福利 | 廖雪峰官方Python教程,拿走不谢!
原标题:福利 | 廖雪峰官方Python教程,拿走不谢! Python简直就是万能的,你用Python都做过哪些事? 用网页看各大网站的VIP视频,用python下载? 用Python玩跳一跳,跳到5 ...
- 廖雪峰python视频教程-福利 | 廖雪峰官方Python教程,拿走不谢!
原标题:福利 | 廖雪峰官方Python教程,拿走不谢! Python简直就是万能的,你用Python都做过哪些事? 用网页看各大网站的VIP视频,用python下载? 用Python玩跳一跳,跳到5 ...
- python廖老师课程资源,廖老师的python教程
python推荐夜曲还是廖雪峰 夜曲编程这是真正适合从零开始学习Python的编程小白,一个非常有趣的线上课程.廖雪峰官方网站是编程大佬. 很多Python入门推荐里都会提到的一个学习渠道我认为更适合 ...
- 孔浩老师 java 微信_孔浩老师JAVA WebService教程
课程目录:01_webservice快速实例 02_wsimport的使用 03_wsdl和soap讲解(介入了tcpmon工具) 04_SOA的分析(纯属扯淡) 05_dtd讲解 06_schema ...
- Kali Linux常用服务配置教程获取IP地址
Kali Linux常用服务配置教程获取IP地址 下面以Kali Linux为例,演示获取IP地址的方法 (1)设置网络接口为自动获取IP地址.在Kali Linux的收藏夹中单击图标,将显示所有的程 ...
最新文章
- 3764树上的异或值(自己研究的静态字典树)
- 4 [面向对象]-三大特性:多态
- Spring5 jar包下载
- 【CodeForces - 608C】Chain Reaction (二分 或 dp ,思维)
- php删除第一个字母,php – 正在上传的文件将第一个字母切断
- 配置多个git账号_一台电脑,两个及多个git账号配置
- jQuery 的属性操作方法
- [.NET 4.5] ADO.NET / ASP.NET 使用 Async 和 Await 异步 存取数据库
- IBM语音识别系统实现错词率重大突破
- FineBI 项目资源迁移
- 迅雷beat下载为php,2019苹果迅雷beat版链接下载地址-迅雷ios内测版ios13企业信任版app下载官方最新beta手机版-迅雷ios永久稳定版西西软件下载...
- flask框架的使用
- 服务器HBA品牌、驱动和固件版本核查
- 键盘输入一个高精度的正整数n,去掉任意s个数字后剩下的数字按原左右次序将组成一个新的正整数。编程对给定的n和s,寻找一种方案,使得剩下的数最小
- 【面试题记】删除字符串中相邻重复字符
- mac mini mysql 安装_苹果宣布新款Mac mini机型 高端版安装服务器系统
- vue如何动态获取数据改变背景颜色和字体颜色以及获取图片
- “Google chrome”,安卓和苹果版本,以及他的版本历史真是绚丽啊!
- python离线安装第三方库whl_详细说明如何在pycharm不联网的情况下,离线安装第三方库及依赖包(如sklearn)...
- 开吃吧无线订餐机 改变餐饮O2O外卖行业