Added manga-py source

This commit is contained in:
2019-12-14 22:33:14 -05:00
parent 9a4dd4b09b
commit 45067caea6
420 changed files with 18054 additions and 0 deletions

View File

@@ -0,0 +1,48 @@
from os import chmod
from sys import platform
from zipfile import ZipFile
from requests import get
from manga_py.fs import is_file, dirname, path_join, get_util_home_path
class WebDriver:
driver_version = '2.40'
@staticmethod
def is_win():
return ~platform.find('win32')
def download_drivder(self):
url_prefix = 'https://chromedriver.storage.googleapis.com/'
url = '/chromedriver_linux64.zip'
if ~platform.find('darwin'):
url = '/chromedriver_mac64.zip'
if self.is_win():
url = '/chromedriver_win32.zip'
path = path_join(get_util_home_path(), 'driver.zip')
with open(path, 'wb') as driver:
driver.write(get(url_prefix + self.driver_version + url).content)
driver.close()
with ZipFile(path) as file:
file.extractall(dirname(self._driver_path()))
def _driver_path(self):
if self.is_win():
driver = 'chromedriver.exe'
else:
driver = 'chromedriver'
return path_join(get_util_home_path(), driver)
def get_driver(self):
from selenium import webdriver # need, if captcha detected
driver_path = self._driver_path()
if not is_file(driver_path):
self.download_drivder()
self.is_win() or chmod(driver_path, 0o755)
driver = webdriver.Chrome(executable_path=driver_path)
driver.set_window_size(500, 600)
return driver