Python漫画下载器「建议收藏」

Python漫画下载器「建议收藏」“并不是所有数据都应该被获取。”——弗罗指令,53.12很多漫画找不到下载资源了(可能被亚空间吞没了吧),无奈只能从漫画网站上扒了。但一页一页右键保存太浪费资源与时间了,所以写了个Py爬虫扒图片吧~~赞美虚空龙,额,我是说万机神~#coding:utf-8#!/usr/bin/envpython3#=========================================================##漫画下载##================..

大家好,又见面了,我是你们的朋友全栈君。

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

—— 弗罗指令,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 sys

import threading
from concurrent.futures import ThreadPoolExecutor

##同时运行线程数目
threadCount = 20
pool = ThreadPoolExecutor(threadCount)

#下载和存储地址
downloadURL = "https://xxxxxxx/xxxxx/"
downloadPath = "PATH/download/"

#最大页码
maxPageCount = 200

logging.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 exist
        file_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)

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/148196.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 大疆网上测评题库_【大疆待定面试】发了在线测评,感觉题目挺新的。-看准网…

    大疆网上测评题库_【大疆待定面试】发了在线测评,感觉题目挺新的。-看准网…写面经,攒人品。大疆服务运营培训生。1.大疆网上笔试题(比较独创,很有趣,也有歇跟大疆相关的题,要比较熟悉大疆),笔试过后,有岗位笔试作业。2.大疆服务运营培训生笔试作业题目。三道大题,开放性题目,专业和岗位相关,涉及报告类题目。规定期限内提交,审核,通过后进入面试环节。3.一面,微信视频面试。提前约定时间,到点准时打来,直奔主题。自我介绍,针对个人经历开始提问,最后会用英文简单问答一下看英语能力…

  • 倾斜摄影当中重叠度、传感器尺寸、焦距等参数问题梳理[通俗易懂]

    倾斜摄影当中重叠度、传感器尺寸、焦距等参数问题梳理[通俗易懂]1序随着无人机的快速发展,倾斜摄影行业迎来了一个新的浪潮,越来越多的人利用无人机从事测绘行业的相关数据采集工作。在数据采集过程当中遇到了各种各样的问题,导致飞出来的数据不达标,无法完成模型重建工作。这里根据自己的接触对倾斜摄影过程当中重叠度、传感器、焦距、飞行速度、拍照间隔等参数以及他们之间的相互关系做一个简单的梳理。如有不当或错误之处敬请指正。本文很多内容参考自【Sm

  • Qt面试题(二)

    Qt面试题(二)QT理论试题1以下关于QT的描述正确的是a.是一个不跨平台的C++图形用户界面b.由挪威TrollTech公司出品c.只支持Unix、Linuxd.QTAPI和开发工具对所支持的平台是不一致的2以下关于QT的描述不正确的是a.QT支持2D图形渲染b.QT支持3D图形渲染c.QT支持OpenGL d.QT不支持XML…

  • Vue(3)webstorm代码格式规范设置与vue模板配置

    Vue(3)webstorm代码格式规范设置与vue模板配置编译器代码格式规范设置通常我们写代码时,代码缩进都是4个空格,但是在前端中,据全球投票统计,建议使用2个空格来进行代码缩进。首先我们打开webstorm中的设置,如果使用的是mac的同学直接使用c

  • PS修补工具使用方法[通俗易懂]

    PS修补工具使用方法[通俗易懂]使用场景:当我们在选取图片时,发现有多余的部分想要去除时可以通过PS中的修补工具来帮助我们实现这一操作,如果有对此功能不是很了解的小伙伴请看以下教程,小编将为大家带来PS修补工具的使用方法。方法步骤:一:把一张需要抹除的照片导入到Photoshop中二:然后找到Photoshop工具栏中的这个图标,点击选择”修复画笔工具”三:按住鼠标左键,把要抹去的部分选取出来.选取完成后会有一条虚线.四:保持鼠标在虚线内,按住鼠标左键,向相似的地方移动,这个时候你就会发现鼠标移动到的地方就是填.

  • 100行Html5+CSS3+JS代码实现元旦倒计时界面

    一、前言二、圣诞树效果展示:三、步骤如果之前看过我这篇文章的1.下载VSCode下载链接:VSCode在Hbuilder、idea运行也是可以的,这里推荐使用VSCode2.配置插件三个插件对应的功能:改写标签后自动完善 切换成中文页面 让代码在网页中打开,默认键Alt+B3.构建三个文件在桌面新建一个空的文件夹,用VSCode打开 在VSCode新建三个文件index.htmldomtree….

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号