Fix stuff
This commit is contained in:
@@ -34,7 +34,6 @@ Formats:
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
import atexit, time, sys, urllib.request, os
|
import atexit, time, sys, urllib.request, os
|
||||||
from logging import DEBUG
|
|
||||||
from docopt import docopt
|
from docopt import docopt
|
||||||
from selenium import webdriver
|
from selenium import webdriver
|
||||||
from selenium.webdriver.support.ui import Select
|
from selenium.webdriver.support.ui import Select
|
||||||
@@ -136,42 +135,45 @@ def download_album(url):
|
|||||||
init_driver()
|
init_driver()
|
||||||
driver.get(url)
|
driver.get(url)
|
||||||
wait()
|
wait()
|
||||||
button = driver.find_element_by_xpath(xpath['buy'])
|
try:
|
||||||
if button.text == 'Free Download':
|
button = driver.find_element_by_xpath(xpath['buy'])
|
||||||
logger.info('Album is Free Download')
|
if button.text == 'Free Download':
|
||||||
button.click()
|
logger.info('Album is Free Download')
|
||||||
wait()
|
button.click()
|
||||||
return download_file(url)
|
|
||||||
else:
|
|
||||||
# name your price download
|
|
||||||
logger.info('Album is not Free Download')
|
|
||||||
button.click()
|
|
||||||
wait()
|
|
||||||
price_input = driver.find_element_by_xpath(xpath['price'])
|
|
||||||
price_input.click()
|
|
||||||
price_input.send_keys('0')
|
|
||||||
logger.info('Set payment to 0')
|
|
||||||
wait()
|
|
||||||
try:
|
|
||||||
driver.find_element_by_xpath(xpath['download-nyp']).click()
|
|
||||||
except:
|
|
||||||
return f'Album {url} is not free'
|
|
||||||
checkout = driver.find_element_by_xpath(xpath['checkout'])
|
|
||||||
if checkout.text == 'Download Now':
|
|
||||||
checkout.click()
|
|
||||||
wait()
|
wait()
|
||||||
return download_file(url)
|
return download_file(url)
|
||||||
else:
|
else:
|
||||||
logger.info('Album requires email')
|
# name your price download
|
||||||
# fill out info
|
logger.info('Album is not Free Download')
|
||||||
driver.find_element_by_xpath(xpath['email']).send_keys(options['email'])
|
button.click()
|
||||||
wait()
|
wait()
|
||||||
driver.find_element_by_xpath(xpath['zipcode']).send_keys(options['zipcode'])
|
price_input = driver.find_element_by_xpath(xpath['price'])
|
||||||
|
price_input.click()
|
||||||
|
price_input.send_keys('0')
|
||||||
|
logger.info('Set payment to 0')
|
||||||
wait()
|
wait()
|
||||||
Select(driver.find_element_by_xpath(xpath['country'])).select_by_visible_text(options['country'])
|
try:
|
||||||
wait()
|
driver.find_element_by_xpath(xpath['download-nyp']).click()
|
||||||
checkout.click()
|
except:
|
||||||
logger.info(f'Download link sent to {options["email"]}')
|
return f'Album {url} is not free'
|
||||||
|
checkout = driver.find_element_by_xpath(xpath['checkout'])
|
||||||
|
if checkout.text == 'Download Now':
|
||||||
|
checkout.click()
|
||||||
|
wait()
|
||||||
|
return download_file(url)
|
||||||
|
else:
|
||||||
|
logger.info('Album requires email')
|
||||||
|
# fill out info
|
||||||
|
driver.find_element_by_xpath(xpath['email']).send_keys(options['email'])
|
||||||
|
wait()
|
||||||
|
driver.find_element_by_xpath(xpath['zipcode']).send_keys(options['zipcode'])
|
||||||
|
wait()
|
||||||
|
Select(driver.find_element_by_xpath(xpath['country'])).select_by_visible_text(options['country'])
|
||||||
|
wait()
|
||||||
|
checkout.click()
|
||||||
|
logger.info(f'Download link sent to {options["email"]}')
|
||||||
|
except Exception as e:
|
||||||
|
return e
|
||||||
|
|
||||||
|
|
||||||
def download_label(url):
|
def download_label(url):
|
||||||
|
|||||||
@@ -5,12 +5,11 @@ import free_bandcamp_downloader
|
|||||||
setup(
|
setup(
|
||||||
name='free-bandcamp-downloader',
|
name='free-bandcamp-downloader',
|
||||||
version=free_bandcamp_downloader.__version__,
|
version=free_bandcamp_downloader.__version__,
|
||||||
packaged=find_packages(),
|
packaged=['free_bandcamp_downloader'],
|
||||||
author='7x11x13',
|
author='7x11x13',
|
||||||
install_requires=[
|
install_requires=[
|
||||||
'selenium',
|
'selenium',
|
||||||
'docopt',
|
'docopt'
|
||||||
'rfc6266'
|
|
||||||
],
|
],
|
||||||
entry_points={
|
entry_points={
|
||||||
'console_scripts': [
|
'console_scripts': [
|
||||||
|
|||||||
Reference in New Issue
Block a user