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)

 

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

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

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • MySQL 索引概览

    MySQL 索引概览前言在SQL优化中,索引是至关重要的一环,能给查询效率带来质的飞跃,但是索引并不是万能的,不合理的索引设计甚至会拖慢查询效率。本文将详细介绍各类索引的定义、用法以及分类,并讨论使用索引时应该权衡的要素。文章目录前言概览索引定义索引优缺点优点缺点索引类型按功能逻辑划分普通索引唯一索引主键索引全文索引按物理实现划分聚集索引(clusteredindex)非聚集索引(non-clusteredindex)按字段个数划分单一索引组合索引最左匹配原则概览索引定义索引是一种专门用于帮助SQL高效获

    2022年6月24日
  • java8获取以秒单位的时间戳

    java8获取以秒单位的时间戳importjava.sql.Timestamp;//不带小时,分钟publicstaticlonggetTimeStamp(intlen){              //LocalTime.of(0,0)换成LocalTime.now()可获得完整的时间戳(13位毫秒)longtimestamp=Timestamp.valueOf(LocalDateTim…

    2022年9月6日
  • windows环境搭建web服务器(IIS)

    windows环境搭建web服务器(IIS)windows环境下如何搭建web服务器,百度或者谷歌一下都会有很多教程和资源可以参考。这里我也记载一下过程,便于大家参考。至于什么是web服务器,为什么需要web服务器,这里不太明白的也可以百度一下。简单的说就是需要一个能够处理HTTP协议的互联网程序,当做好一个网站后将其放在这个程序包里。如果指定了这个程序所在电脑的IP地址,就可以用浏览器来显示这个网站了。通常这个程序所在的电脑位置我们称之为…

    2022年5月22日
  • WriteProcessMemory_writeandimprove

    WriteProcessMemory_writeandimproveWriteProcessMemory有好几个参数其中的nSize怎么设置??比如Short型Integer型?  nSize以字节为单位,一个字节Byte等于8位基本数据类型的长度ShortInt8位=1ByteSmallInt16位=2ByteInteger16位=2ByteLongInt32位=4ByteWord16位=2ByteLon

    2022年9月13日
  • mtk camera架构_c语言源代码网站

    mtk camera架构_c语言源代码网站Kd_camera_hw.c(custom\viroyal73\kernel\camera\camera)#include<linux/videodev2.h>#include<linux/i2c.h>#include<linux/platform_device.h>#include<linux/delay.h>#i…

    2022年10月30日
  • 解决windows系统80端口被占用问题

    解决windows系统80端口被占用问题80端口被system(pid=4)系统占用的解决方法,80端口占用后服务器无法运行

    2022年10月25日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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