mirror of
https://github.com/RicterZ/nhentai.git
synced 2025-04-20 11:01:17 +02:00
fix bug on mac #126
This commit is contained in:
parent
91053b98af
commit
b3f25875d0
@ -5,11 +5,10 @@ import multiprocessing
|
|||||||
import signal
|
import signal
|
||||||
|
|
||||||
from future.builtins import str as text
|
from future.builtins import str as text
|
||||||
|
import sys
|
||||||
import os
|
import os
|
||||||
import requests
|
import requests
|
||||||
import threadpool
|
|
||||||
import time
|
import time
|
||||||
import multiprocessing as mp
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
from urllib.parse import urlparse
|
from urllib.parse import urlparse
|
||||||
@ -18,10 +17,10 @@ except ImportError:
|
|||||||
|
|
||||||
from nhentai.logger import logger
|
from nhentai.logger import logger
|
||||||
from nhentai.parser import request
|
from nhentai.parser import request
|
||||||
from nhentai.utils import Singleton, signal_handler
|
from nhentai.utils import Singleton
|
||||||
|
|
||||||
requests.packages.urllib3.disable_warnings()
|
requests.packages.urllib3.disable_warnings()
|
||||||
semaphore = mp.Semaphore()
|
semaphore = multiprocessing.Semaphore(1)
|
||||||
|
|
||||||
|
|
||||||
class NHentaiImageNotExistException(Exception):
|
class NHentaiImageNotExistException(Exception):
|
||||||
@ -133,16 +132,14 @@ class Downloader(Singleton):
|
|||||||
queue = [(self, url, folder) for url in queue]
|
queue = [(self, url, folder) for url in queue]
|
||||||
|
|
||||||
pool = multiprocessing.Pool(self.size, init_worker)
|
pool = multiprocessing.Pool(self.size, init_worker)
|
||||||
|
[pool.apply_async(download_wrapper, args=item) for item in queue]
|
||||||
for item in queue:
|
|
||||||
pool.apply_async(download_wrapper, args=item, callback=self._download_callback)
|
|
||||||
|
|
||||||
pool.close()
|
pool.close()
|
||||||
pool.join()
|
pool.join()
|
||||||
|
|
||||||
|
|
||||||
def download_wrapper(obj, url, folder=''):
|
def download_wrapper(obj, url, folder=''):
|
||||||
if semaphore.get_value():
|
if sys.platform == 'darwin' or semaphore.get_value():
|
||||||
return Downloader.download_(obj, url=url, folder=folder)
|
return Downloader.download_(obj, url=url, folder=folder)
|
||||||
else:
|
else:
|
||||||
return -3, None
|
return -3, None
|
||||||
|
@ -178,7 +178,6 @@ def doujinshi_parser(id_):
|
|||||||
doujinshi['img_id'] = img_id.group(1)
|
doujinshi['img_id'] = img_id.group(1)
|
||||||
doujinshi['ext'] = ext
|
doujinshi['ext'] = ext
|
||||||
|
|
||||||
pages = 0
|
|
||||||
for _ in doujinshi_info.find_all('div', class_='tag-container field-name'):
|
for _ in doujinshi_info.find_all('div', class_='tag-container field-name'):
|
||||||
if re.search('Pages:', _.text):
|
if re.search('Pages:', _.text):
|
||||||
pages = _.find('span', class_='name').string
|
pages = _.find('span', class_='name').string
|
||||||
|
Loading…
x
Reference in New Issue
Block a user