Python漫画下载器

news/2024/12/29 5:25:23/

“并不是所有数据都应该被获取。”

—— 弗罗指令,53.12

 

很多漫画找不到下载资源了(可能被亚空间吞没了吧),无奈只能从漫画网站上扒了。但一页一页右键保存太浪费资源与时间了,所以写了个Py爬虫扒图片吧~~赞美虚空龙,额,我是说万机神~

 

# coding:utf-8#!/usr/bin/env python3#=========================================================
#
# 漫画下载
#
#=========================================================#                                            ;@#@@$|;'`.                                            `
#                                            ;@#############&|:`                                    `
#                                            ;@####################|`                               `
#                                            ;@####################@@##$:                           `
#                                            :@#@#########################@!.                       `
#                                      .%####$;::;$###########################|.                    `
#                                      .%####|    |#############################&:                  `
#                       .;&#%.         .%####|    |###########$!$##################|.               `
#                    '&##@##@$`        `%####|    |#@@#######%.    '$################|              `
#                 `%##########&: `:|&########|     .`:%#####%.        `$##############@;            `
#                  :&#############@@#########|                       .%###############@@$'          `
#                   '$#######################|                      .|###################@!.        `
#                    `$#############@########%.                    .|######################$`       `
#                   !##############@|'       :@#####&!'             .!@#####################&`      `
#       .%@;.     |#############%`           ;######@@###$`            ;@##################@@&'     `
#      :&#####&:|##########@#&:              ;@#############$.           ;@#&;`   |###########&:    `
#     |########@###########&'                :@#############@#$`                   '&##########&'   `
#    !####################|.                 :@################@;                   '&##########$`  `
#   ;@@@#################!                   :@##################|                   ;@##########|  `
#     '$@###############!                    :@##################@;               ;&#############@: `
#        .%############$`                    :@###################$`           `$#@###############%.`
#        `$############|                     :@###################&'            |#################@:'
#        |#############|                     :@###################@:            '&#################|:
#       `$#############|.                    :@###################&'             |#################$!
#   ...`%##############&'                    :@#################@#%.             '$################@%
#&######################$.                   :@##################&:                      |##########$
#&#######################|                   :@#################@;                       ;@#########$
#&#######################@:                  :@#################%.                       :@#########$
#&########################|                  ;@#################!                        !##########$
#@########################|                  ;@#########@@@@#@#@;                       `%##########$
#       ;@###############$`    `::`          :@####@@###$:';&###&'               '&################@%
#       .%##############|    `$#@@###$;`.    ;@@##&|:        ;@##@:             .%#################$!
#        !#############&:    `$#######@@@#%. :@@;            |####|.            ;@#################|'
#        .%#############&:    :@#@@@##@%'    :@##@!`        '$#@@%`            .%#################@:'
#        :$##############&:    .::`.        :;;&######@%!:;$##@@%.             '$#################%.`
#    .;@##################|                ;@! `&######@@#@#####!                 '%##@##########&: `
#   '&@@###################!              `$#!  !#########@#@@#|                     |###########|  `
#    :@#####################&!'`:!|'      '' :@$!&#####$``;!;'                      ;@##########$`  `
#     :@#####################@#@@#|          ;&@########|                          |###########&'   `
#      `$#@##@|.'%#############@#$`          ;@########@$'              '%###$'  .%###########&:    `
#       .|$:      '$#############%.       .  ;@#$|&##@@#&:            `$#####################&'     `
#                   `%###########!  .'.  |!  ;##%:%#&;$##|          '$######################&'      `
#                    '$######################|.                     ;######################%.       `
#                   |########################|.                      '&##################@!         `
#                  %################@@#######|           `;:.         `$##############@@%`          `
#                 .|##@#####@#%.   `:|$@#####|    '|&####@&#$        .|@############@@&'            `
#                     :&###@@|.        .%####|    |##########&'   `%##@###########@@&:              `
#                        `|@|          .%####|    |############@@#################&:                `
#                                      .$#@@#|    |###########################@#%`                  `
#                                       :|%$&$$&&&###########################$'                     `
#                                            :@#@######################@@#$'                        `
#                                            :@###################@###$;.                           `
#                                            :@############@@####@|'                                `
#                                            ;@#@@########@%;'.                                     `
#
# "There is no truth in flesh, only betrayal."
# "There is no strength in flesh, only weakness."
# "There is no constancy in flesh, only decay."
# "There is no certainty in flesh but death."
# — Credo Omnissiah
##转utf8中文
#import io
#import sys
#import cv2
#import numpy as np
#sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf-8')import os
import urllib.request
import logging
import sysimport threading
from concurrent.futures import ThreadPoolExecutor##同时运行线程数目
threadCount = 20
pool = ThreadPoolExecutor(threadCount)#下载和存储地址
downloadURL = "https://xxxxxxx/xxxxx/"
downloadPath = "PATH/download/"#最大页码
maxPageCount = 200logging.basicConfig(format='%(asctime)s %(levelname)s %(message)s',level=logging.INFO,stream=sys.stdout)opener = urllib.request.build_opener()
opener.addheaders = [("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1941.0 Safari/537.36"),("Referer", "https://xxxxxxx/")]def down(_save_path, _url):try:#伪装urllib.request.install_opener(opener)urllib.request.urlretrieve(_url, filename=_save_path)except:print('Error when retrieving the URL:', _save_path)def downloadAtIndex(index):file_path = downloadPath + str(index) + ".jpg"url = downloadURL + str(index) + ".jpg"if not os.path.isfile(file_path):# if dir 'dir_name/' doesn't existfile_dir = file_path[:-9]if not os.path.exists(downloadPath):os.mkdir(downloadPath)print("Downloading file", file_path)down(file_path, url)else:logging.info("File exists.")print(file_path," Done \n")for i in range(1, maxPageCount):#多线程下载task = pool.submit(downloadAtIndex, (i))#单线程下载
#    downloadAtIndex(i)

 


http://www.ppmy.cn/news/135507.html

相关文章

1805:碎纸机 (java实现 DFS 回溯)

题目链接 dfs,转化为处理子问题如123456,1和子问题“23456”,12和子问题“3456”等 注意遇到重复的切割方式不能简单的修改ans-2,因为当再次遇到相同方式,会覆盖掉-2. import java.util.*;public class Main {pub…

【专题5: 硬件设计】 之 【38.案例三:碎纸机,正转信号和反转信号只能二选一】

希望本是无所谓有,无所谓无的,这正如脚下的路,其实地上本没有路,走的人多了,也便成了路原创不易,文章会持续更新文章会同步到作者个人公众号上,感谢扫码关注 所有文章总目录:【嵌入式…

【专题5: 硬件设计】 之 【29.案例三:碎纸机,继电器和电磁兼容概述】

希望本是无所谓有,无所谓无的,这正如脚下的路,其实地上本没有路,走的人多了,也便成了路原创不易,文章会持续更新文章会同步到作者个人公众号上,感谢扫码关注 所有文章总目录:【嵌入式…

ISCC 2019 杂项 碎纸机(“想要我的宝藏吗?如果想要的话,那就到碎纸机中找吧,我全部都放在那里。”)

先下载吧 下载之后 打开 是一个 jpg文件 打开 真的是一个碎纸机 将文件名称改为 .zip 解压后可以得到 十张图片!!! 还有一个文本文件如下 碎纸机中居然是一堆黑色和白色的碎片,但是这些碎片之中到底会有什么样的宝藏呢&…

openjudge 1805碎纸机 解析报告

openjudge 1805:碎纸机 解析报告总时间限制: 1000ms 内存限制: 65536kB描述你现在负责设计一种新式的碎纸机。一般的碎纸机会把纸切成小片,变得难以阅读。而你设计的新式的碎纸机有以下的特点: 1.每次切割之前,先要给定碎纸机一个目标数&…

XCTF---MISC---碎纸机11

XCTF—MISC—碎纸机11 flag:flag{You Can Repair A Picture From Splices Baesd On Entropy} 解题思路: 1、观察题目,下载附件。 2、下载后是一个文件夹,文件夹中包含了50张图片,图片宽度非常窄,根据题目…

poj-碎纸机

参考自:这位博主~ 描述 你现在负责设计一种新式的碎纸机。一般的碎纸机会把纸切成小片,变得难以阅读。而你设计的新式的碎纸机有以下的特点: 1.每次切割之前,先要给定碎纸机一个目标数,而且在每张被送入碎纸机的纸片…

7-5 还原文件 (20 分) 一份重要文件被撕成两半,其中一半还被送进了碎纸机。我们将碎纸机里找到的纸条进行编号,如图 1 所示。然后根据断口的折线形状跟没有切碎的

文章目录 题目描述输入格式输出格式输入样例输出样例代码思路 7-5 还原文件 (20 分) 题目描述 一份重要文件被撕成两半,其中一半还被送进了碎纸机。我们将碎纸机里找到的纸条进行编号,如图 1 所示。然后根据断口的折线形状跟没有切碎的半张纸进行匹配&a…