#! python3
# downloadXkcd.py - Downloads every single XKCD comic.
import requests, os, bs4url = 'http://xkcd.com' # starting url下载图片的网址
os.makedirs('xkcd', exist_ok=True) # store comics in ./xkcd
while not url.endswith('#'):# Download the page.print('Downloading page %s...' % url)res = requests.get(url)#下载网页资源res.raise_for_status()soup = bs4.BeautifulSoup(res.text,"html.parser")#解析HTML# Find the URL of the comic image.comicElem = soup.select('#comic img')#找到imgif comicElem == []:#如果img为空,则没有能下载的图片print('Could not find comic image.')else:comicUrl = 'http:'+comicElem[0].get('src')#否则就保存图片连接print("待下载的图片链接为:%s"%comicUrl)# Download the image.res = requests.get(comicUrl)#获取图片链接res.raise_for_status()# Save the image to ./xkcdimageFile = open(os.path.join('xkcd', os.path.basename(comicUrl)), 'wb')for chunk in res.iter_content(100000):imageFile.write(chunk)#保存图片到文件夹下imageFile.close()#关闭文件夹# Get the Prev button's url.prevLink = soup.select('a[rel="prev"]')[0]#前一张图片的按钮url = 'http://xkcd.com' + prevLink.get('href')#如果链接不是以#结束,则表明前面还有图片可以被下载
print('Done.')

第11章 下载xkcd的漫画相关推荐

  1. Python批量下载XKCD漫画只需20行命令

    XKCD是一个流行的极客漫画网站,其官网首页有一个 Prev 按钮,让用户导航到前面的漫画.如果你希望复制该网站的内容以在离线的时候阅读,那么可以手动导航至每个页面并保存.但手动下载每张漫画要花较长的 ...

  2. dac梯形波c语言编程,单片机项目第11章单片机与AD接口.ppt-资源下载在线文库www.lddoc.cn...

    单片机项目第11章 单片机与AD接口.ppt 第11章 单片机与AD接口,11.1 项目内容数字电压表的设计 11.2 程序设计 11.3 相关知识,11.1 项目内容数字电压表的设计,11.1.1 ...

  3. 《Learning Scrapy》(中文版)第11章 Scrapyd分布式抓取和实时分析

    序言 第1章 Scrapy介绍 第2章 理解HTML和XPath 第3章 爬虫基础 第4章 从Scrapy到移动应用 第5章 快速构建爬虫 第6章 Scrapinghub部署 第7章 配置和管理 第8 ...

  4. 复现经典:《统计学习方法》​第 11 章 条件随机场

    本文是李航老师的<统计学习方法>[1]一书的代码复现. 作者:黄海广[2] 备注:代码都可以在github[3]中下载. 我将陆续将代码发布在公众号"机器学习初学者", ...

  5. 弟子规python编程游戏_《Python游戏趣味编程》 第11章 消灭星星

    知乎视频​www.zhihu.com 图书简介可以看这里: 童晶:<Python游戏趣味编程>新书上架了​zhuanlan.zhihu.com 消灭星星是一款非常容易上瘾的消除类游戏,只需 ...

  6. 《asp.net夜话》一书视频ASP.NET夜话视频1-17章下载(ASP.NET夜话2009年5月9日更新)

    asp.net夜话教学视频说明 本 系列视频是笔者著作<asp.net夜话>的配套视频教程.<asp.net夜话>是根据在csdn论坛里经常问到的问题结合本人多年的网站开发经验 ...

  7. 《JavaScript权威指南第7版》第11章 JavaScript标准库

    第11章 JavaScript标准库 11.1 Set和Map 11.1.1 Set类 11.1.2 Map类 11.1.3 WeakMap和WeakSet 11.2 类型数组和二进制数据 11.2. ...

  8. linux操作系统 第11章 linux系统管理

                                                                                      第11章    Linux系统管理 ...

  9. Python项目实战:下载腾讯漫画的脚本及源码【女朋友在也不担心我花钱购买漫画了】

    目录 工具: 命令行帮助 GUI预览效果 全部源码: 下载源码: 代码仅供学习交流使用 下载腾讯漫画的脚本.空参运行进入交互式模式,支持的参数可以加-h或--help参数查看. 工具: python3 ...

最新文章

  1. 数据集神经网络共同进步
  2. 步骤4 - 微服务提供者接收请求,提供服务并传回给Orchestra
  3. Python学习-文件的调用-读取
  4. python打开文件_用Python(in PsychoPy)打开SPSS数据文件
  5. 【修正】Q93:PLY文件对应图形法向量反向问题——以bunny10K为例
  6. 华为最新解bl解锁码计算工具_黔隆科技刷机教程红米note4X低配版忘记密码刷机解锁降级救砖解屏幕锁账户锁教程...
  7. 计算机业打字排版比赛计算机实施方案,大学“新生杯”计算机打字比赛活动策划书...
  8. 模电数电高频电路综合实验成套设备QY-MS535G
  9. TTL与CMOS电路小结
  10. python 节气_Python开源日志01:pyGregorian2LunarCalendar公历农历转换、阳历阴历转换、二十四节气计算...
  11. html多张图片合成一张,PS照片合成:多张照片合成一张
  12. 笔记本计算机管理没有键盘,如何禁用笔记本键盘输入?怎么关闭笔记本键盘
  13. 友盟第三方分享 QQ QQ空间 微信 新浪 及走过的坑
  14. 标视界:值得您信赖的商标查询网
  15. 如何将视频生成二维码?
  16. hevc_nvenc 详细分析2 ——preset分析
  17. SWFObject2
  18. 定时器(setTimeout()和setInterval())的清除问题
  19. attend,join,participate,take part in
  20. 圆心科技再冲刺港交所上市:收入和亏损同增,毛利率走低,何涛为董事长

热门文章

  1. Matlab图标如何去掉图形框右侧和上侧的刻度线(也适用全框图)
  2. 俺可爱的小马,差点被淹了
  3. 大型商业进销存系统源码
  4. win10_x64下shellcode提权工具(SYSTEM权限)
  5. 将.sql文件转成.pdm文件
  6. 软件测试有专门的学校吗,开设软件测试专业学校都有哪些?
  7. 采用API方式发送,接收短信(嘉信)
  8. Unity学习笔记[一] RollBall小游戏
  9. 南下飞粤,共创未来! 【友盟+】即将出席2016广东互联网大会
  10. python3内置函数大全