python下载整个网站_python 下载整个网站 | 学步园
用python实现的下载整个网站工具。
核心流程很简单:
1. 输入网站地址
2. url,得到响应的内容。
3. 根据响应的http报文头,如果类型为html, 则从第4步开始执行。如果是其它类型,则从第6步执行。
4. 提取html中href和src属性值。
5. 将提取到的url,加入下载队列中。如果url已经存在于下载队列中,则丢弃它。
6. 再然后打开url队列中下一个url。
7.继续循环执行第2步,知道url队列中的url处理完为止。
这个步骤看起来很简单,但是里面很多细节要处理半天。
url的各种类型,怎么给后缀有问号的url命名。
目前这个程序中有一处问题是:
1 打开url时,可能会阻塞到一处执行不下去。这个需要研究一下urllib.request
2 还有在url队列长度庞大时,多线程下载速度回更快。
3 英文注释不知道有多少错误。因为写注释时,要是用中文,需要不停来回切换输入法,所以就使用英文。
而目前的程序部支持多线程,日后再完善。
如果有同学有兴趣完善,非常欢迎。
个人邮箱:369806726@qq.com
python下载整个网站_python 下载整个网站 | 学步园相关推荐
- python的numpy教程_python numpy 基础教程 | 学步园
1.Numpy是什么 很简单,Numpy是Python的一个科学计算的库,提供了矩阵运算的功能,其一般与Scipy.matplotlib一起使用.其实,list已经提供了类似于矩阵的表示形式,不过nu ...
- python桌面快捷图标_python 创建桌面快捷方式 | 学步园
首先得安装 ActiveState ActivePython . 因为这个中带了 winshell 库 from os import path import winshell #---------- ...
- php 下载文件 类库,thinkphp 文件下载 文件下载php | 学步园
THinkPHP1.5中文件的下载 用到的系统类库文件是Http.class.php,位于ThinkPHP\Lib\ORG\Net目录下,类名Http,其中有静态方法 static function ...
- python导入哨兵数据_Python 下载哨兵Sentinel数据(Sentinel-1~3)
哨兵数据目前应用广泛,空间分辨.光谱分辨率都比较高.目前数据下载部分包括官网和Python程序下载. 其中哨兵1和2数据下载网上已经有非常详细的记录,链接如下:Python中使用sentinelsat ...
- python 秒杀12306课程_Python攻破12306网站,实现2020最强抢票模式!
python版本支持 2.7.10 - 2.7.15 依赖库 依赖若快 若快注册地址: 推荐用若快,打码兔平台已经关闭 项目依赖包 requirements.txt 安装方法-Windows: 安装方 ...
- python资源网站_Python 博客网站资源
# Python 博客网站资源 * **本人编写的 Python 系列文章** 本草根编写的 Python 文章,里面有各种例子代码 传送门: [Gitbook](https://www.readwi ...
- python程序网站_Python程序到网站的应用
好吧,可能很难给你一个好的建议,因为你的项目的描述相当模糊--究竟什么是"50mb的python分级间隔记忆体图片和文本程序评级系统"???:)-但我将试着概述一下您列出的选项之间 ...
- python下载加密视频_Python下载未加密的m3u8文件(流媒体文件)
很多时候我们用手机浏览器缓存视频时发现缓存下来的文件后缀是.m3u8格式的,按文件目录找过去发现是一个几十K大小的系统不可读的文件,那我们缓存下来的文件去哪儿了呢? 其实.m3u8文件就相当于一个协议 ...
- python中文下载官网_python下载|python 64位 v3.7.3 官方中文最新版 - 软件下载 - 绿茶软件园|33LC.com...
python 64位是款面向对象的编程语言.python 64位具有非常多的优点,支持交互式运行.支持图形方式运行.支持模块和包.支持拓展,支持各类函数库,是款即译式的.互动的编程语言,是非常受程序员 ...
最新文章
- JavaScript专题之模拟实现call和apply
- git 查看公共commit_git使用点滴:如何查看commit的内容
- leetcode 382. Linked List Random Node | 382. 链表随机节点(Java)
- ninja: error: 'LIBSOUNDIO_LIB-NOTFOUND', needed by 'bin/k4aviewer', missing and no known rule to mak
- Docker是传统的应用发布管理的终结者么?
- Python语法教程-基础语法01
- Matlab 2020b安装教程
- 【eoeAndroid社区索引】android 条形码的知识汇总
- 苹果谷歌微软薪酬大揭秘,最高320万元!
- CMYK, RGB颜色值对照表
- php批量查qq号码是否冻结,PHP批量检查网站的sitemap是否存在
- java五子棋人机对战_java swing人机对战五子棋
- Linux基础(三)
- 华为初面+综合面试(Java技术面)附上面试题
- 历史二—— 浮点运算与数组下标寻址
- Wireshark 设置中文
- ipad接受airdrop_如何在iPhone,iPad和Mac上使用AirDrop即时共享文件
- 程序员月薪8000,丢人吗?
- 信息安全中常见的网络知识(一)网络基本概念
- 阿里云短视频SDK for iOS —— (二)静态与动态贴纸拍摄