您的位置 首页 > 娱乐休闲

【漫画怎么下载到电脑】中年大叔学编程-Python下载海贼王漫画图片

虽然年纪大了,但是追了几年的海贼王总感觉动画更新慢,所以想提前预知剧情,所以看漫画满足了自己的好奇心。(《莎士比亚》《哈姆雷特》《漫画名言》)。

每次都需要去漫画的网站一个个看,觉得还是比较麻烦,最近才学了Python,所以就想着用Python把现在更新完的漫画下载下来。

这里我们需要两个组件:

  • PyQuery 主要用于解析html
  • Requests 主要用于请求图片获取文件流
  • selenium 加载网页

那么我们先来简单分析一下页面结构吧,

从截图中,我们可以看到每个章节就是个超链接,它的dom结构是id为chapter-list-4的ul下的li节点中,那么我们就先解析出这些超链接地址,PyQuery的安装就不再细说了,直接使用pip install PyQuery即可(不出意外的话是可以正常使用了),

from pyquery import PyQuery as pq page = pq(url=";, encoding='utf-8') lias = page("#chapter-list-4").find('li').find('a').items() for a in lias: prin['href']) prin())

初步效果有了,我们再继续看看详细的动漫页面

我们可以看到页面结构、图片路径以及图片页数,当我们点击下一页的时候,URL和图片都有所变化

好,这里,我们就可以来获取我们的图片了

from pyquery import PyQuery as pq from selenium import webdriver import requests browser = webdriver.Chrome() brow(';) page = pq) images = page("#images") img_url = images.find('img').a page_total = images.find('p').text() print(img_url) prin('/')[1].replace(')', '')) response = reque(img_url) with open('1.jpg', 'wb') as f: f.write)

执行这段脚本后,会打印出图片和页数以及在本地保存一张图片

现在我们再来结合之前的获取到的地址,来全量下载吧,来看看最终代码

from pyquery import PyQuery as pq from selenium import webdriver import requests import os browser = webdriver.Chrome() def get_pic(source_url, file_path, index): url = source_url if index > 1: url = url+"#p="+str(index) brow(url) # 浏览器加载的地址 brow() # 刷新浏览器 page = pq) images = page("#images") img_url = images.find('img').a page_total = images.find('p').text() page_total = ('/')[1].replace(')', '') # 获取漫画页数 response = reque(img_url) with open(file_path+str(index)+'.jpg', 'wb') as f: # 保存图片 f.write) if index < int(page_total): get_pic(source_url, file_path, index+1) # 递归获取网页中的图片 def get_page(url): page = pq(url=url, encoding='utf-8') lias = page("#chapter-list-4").find('li').find('a').items() for a in lias: folder='F:/hzw/'+a.text() # isexists=os.(folder) # 检查文件夹是否存在 if not isExists: # 如果不存在则新建文件夹 os.makedirs(folder) get_pic(';+a.attr['href'], folder+"/", 1) get_page(';)

现在执行脚本就可以看到程序正在逐一下载图片哟

是不是感觉有点意思呢?

我只是记录我的学习过程,由于书读的少,可能很多地方表述或者是理解得不对,请轻喷并指正。

关于作者: admin

无忧经验小编鲁达,内容侵删请Email至wohenlihai#qq.com(#改为@)

热门推荐