Responsive image

kujisanfun - 2021-02-18 10:57 [GF]
网站挂了,此贴失效



原文:https://snow-plus.net/read.php?tid-1072428-uid-726521.html

前几天EroCool(和喵绅士用的同一个服务器)和javbus图片服务器炸了,详见:https://snow-plus.net/read.php?tid-1095503.html    https://snow-plus.net/read.php?tid-1095350.html
修复之后他换了服务器地址,对原爬虫进行了一定的修改,主要就是改了下服务器地址以及采用了相对路径,以后下载的漫画在和爬虫同一路径下的本子文件夹里
其他的没什么修改的,使用方法详见原文

重要说明,咋说呢,他似乎对旧本子的服务器地址优化很差,越旧的本子她的地址(形如i0.mspcdn8.xyz)mspcdn后的数字越大,0~3下载起来还行,越往后下载起来越费劲,这也是没办法的事情

打包好的exe文件
链接: https://pan.baidu.com/s/1_c7v6oUkoNZHsp4sbAI1QA
此帖售价 0 SP币,已有 112 人购买
若发现会员采用欺骗的方法获取财富,请立刻举报,我们会对会员处以2-N倍的罚金,严重者封掉ID!


代码部分
复制代码
  1. import os
    import requests
    import threading
    from faker import Faker
    faker = Faker(locale='zh_CN')
    from pyquery import PyQuery as pq
    '''下载单本漫画'''
    def get_doc(url):    #返回pyquery对象
        headers = {'User-Agent':faker.user_agent()}    #用随机UA
        response = requests.get(url,headers=headers)
        html = response.text
        doc = pq(html)
        return doc
    def make_file(file_path,file_name):    #目标路径和文件夹名
        if os.path.exists(os.path.join(file_path,file_name)):                    #判断是否存在目标文件夹
            return os.path.join(file_path,file_name)
        else:                                                      #没有就创建
            os.makedirs(os.path.join(file_path,file_name))
            return os.path.join(file_path,file_name)
    def save_img_noreferer(path,src):
        headers = {'User-Agent':faker.user_agent()}
        try:
            response = requests.get(src,headers=headers)    #有的时候仍然会出现UA反爬虫,跳过
        except:
            pass
        else:
            if response.status_code == 200 or response.status_code == 206:
                name = src.split('/')[-1]    #图片名称默认为存在服务器里的名称
                path = os.path.join(path,name)
                with open(path,'wb') as f:
                    f.write(response.content)
            elif response.status_code == 522:    #状态码522,重试
                save_img_noreferer(path,src)
            elif response.status_code == 404:    #状态码404,可能是src图片格式问题
                save_img_noreferer(path,src.replace('jpg','png'))
            else:    #为防止错误,跳过
                pass
    glock = threading.Lock()
    def save_imgs(srcs,path):    #多线程,配合save_img_noreferer()使用
        while True:
            glock.acquire()
            if len(srcs) ==0:
                glock.release()
                break
            else:
                src = srcs.pop()
                glock.release()
                save_img_noreferer(path,src)    #记得修改path
    def main():
        url_main = input('请输入下载漫画的地址:')
        num = url_main.split('/')[-1].split('o')[0]    #漫画代码
        doc = get_doc(url_main)
        page = doc('.ld_box > div:nth-child(2) > .ld_body').text().split(' ')[0]    #漫画页码
        title = doc('#comicdetail > h1').text()+'id='+num+'page='+page    #漫画标题
        src_format = doc('
    >img')[0].items()[2][1].split('/')[2]    #服务器地址
        print('当前漫画服务器地址为:'+src_format+',数字越大下载越慢,请耐心等待')
        pic_format = 'jpg'    #默认图片格式
        list_1 = ['\\','/',':','*','?','"','<','>','|']    #去除漫画名中的非法字符
        for i in list_1:
            if i in title:
                title = title.replace(i,'')
        print('开始下载:'+title)

        path = make_file('./本子',title)
        print(title+'用有'+page+'页')
        srcs = []
        for i in range(1,int(page)+1):
            src = 'https://'+src_format+'/galleries/'+num+'/'+str(i)+'.'+pic_format    #图片src
            srcs.append(src)
        for _ in range(64):    #64个线程
            consumer = threading.Thread(target=save_imgs,args=[srcs,path,])
            consumer.start()

    if __name__ == '__main__':
        main()


Ganis - 2021-02-18 11:16 [B1F]
顶下


CaqbMux - 2021-02-18 19:31 [B2F]

大佬,请问一直卡在开头啥都不下怎么破,已经试了几个本子了


kujisanfun - 2021-02-19 08:50 [B3F]
EroCool的,不是喵绅士


CaqbMux - 2021-02-19 10:52 [B4F]
好吧,谢谢大佬


ZLL - 2021-02-20 15:08 [B5F]
用户被禁言,该主题自动屏蔽!


suzumi - 2021-02-20 15:26 [B6F]
我也提供一个吧,喵绅士下载的
油猴的插件,直接下载,成功率一般吧。
https://github.com/Tsuk1ko/nhentai-helper
它有github版本
https://github.com/Tsuk1ko/nhentai-helper
或者搜nhentai-helper自己下载也可以。


赤中 - 2021-03-14 18:01 [B7F]
My一下


玖加七 - 2021-03-28 13:13 [B8F]
学到了


3b7aaaaa - 2021-03-28 13:40 [B9F]
    


瓦萊裡安 - 2021-04-07 16:19 [B10F]
学习一下


多木知春 - 2021-04-07 19:34 [B11F]
  


岁月时代 - 2021-04-07 21:06 [B12F]
大佬大佬






桌面版


Powered by SP Project v1.0 © 2010-2019
Time 0.150709 second(s),query:3 Gzip enabled


Top