From f04fcca3854d19a77665c9fdb6c004ae89442314 Mon Sep 17 00:00:00 2001 From: tianyu Date: Fri, 10 Feb 2017 16:44:20 +0800 Subject: [PATCH 1/6] Update dnspod-hook.sh --- le-dns/dnspod-hook.sh | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/le-dns/dnspod-hook.sh b/le-dns/dnspod-hook.sh index b08c195..b935c2c 100755 --- a/le-dns/dnspod-hook.sh +++ b/le-dns/dnspod-hook.sh @@ -1,22 +1,38 @@ #!/bin/bash -function deploy_challenge { +deploy_challenge() { local DOMAIN="${1}" TOKEN_FILENAME="${2}" TOKEN_VALUE="${3}" echo "$DOMAIN" "$TOKEN_FILENAME" "$TOKEN_VALUE" ./dnspod.sh "$CONFIG" "$DOMAIN" "$TOKEN_VALUE" sleep 5 } -function clean_challenge { +clean_challenge() { local DOMAIN="${1}" TOKEN_FILENAME="${2}" TOKEN_VALUE="${3}" } -function deploy_cert { - local DOMAIN="${1}" KEYFILE="${2}" CERTFILE="${3}" CHAINFILE="${4}" +deploy_cert() { + local DOMAIN="${1}" KEYFILE="${2}" CERTFILE="${3}" FULLCHAINFILE="${4}" CHAINFILE="${5}" TIMESTAMP="${6}" } -function unchanged_cert { +unchanged_cert() { local DOMAIN="${1}" KEYFILE="${2}" CERTFILE="${3}" FULLCHAINFILE="${4}" CHAINFILE="${5}" } -HANDLER=$1; shift; $HANDLER $@ +invalid_challenge() { + local DOMAIN="${1}" RESPONSE="${2}" +} + +request_failure() { + local STATUSCODE="${1}" REASON="${2}" REQTYPE="${3}" +} + +exit_hook() { + + : +} + +HANDLER="$1"; shift +if [[ "${HANDLER}" =~ ^(deploy_challenge|clean_challenge|deploy_cert|unchanged_cert|invalid_challenge|request_failure|exit_hook)$ ]]; then + "$HANDLER" "$@" +fi From 660680fd8bb7adb8767c9119280d3b91b97fa8f0 Mon Sep 17 00:00:00 2001 From: tianyu Date: Fri, 10 Feb 2017 16:45:23 +0800 Subject: [PATCH 2/6] Update le-dnspod.sh --- le-dns/le-dnspod.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/le-dns/le-dnspod.sh b/le-dns/le-dnspod.sh index 6d29d9d..0ec27bf 100755 --- a/le-dns/le-dnspod.sh +++ b/le-dns/le-dnspod.sh @@ -28,6 +28,8 @@ if [ ! -f "letsencrypt.sh" ];then chmod +x letsencrypt.sh fi +./letsencrypt.sh --register --accept-terms + if [ "$ECC" = "TRUE" ];then ./letsencrypt.sh -c -k ./dnspod-hook.sh -t dns-01 -a secp384r1 else From 51e83b1d758bec0d4ad39c0cef96eba87cb60fa6 Mon Sep 17 00:00:00 2001 From: tianyu Date: Fri, 10 Feb 2017 16:49:07 +0800 Subject: [PATCH 3/6] Update cloudxns-hook.sh --- le-dns/cloudxns-hook.sh | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/le-dns/cloudxns-hook.sh b/le-dns/cloudxns-hook.sh index 33e1331..b7ad47c 100755 --- a/le-dns/cloudxns-hook.sh +++ b/le-dns/cloudxns-hook.sh @@ -1,22 +1,38 @@ #!/bin/bash -function deploy_challenge { +deploy_challenge() { local DOMAIN="${1}" TOKEN_FILENAME="${2}" TOKEN_VALUE="${3}" echo "$DOMAIN" "$TOKEN_FILENAME" "$TOKEN_VALUE" ./cloudxns.sh "$CONFIG" "$DOMAIN" "$TOKEN_VALUE" sleep 5 } -function clean_challenge { +clean_challenge() { local DOMAIN="${1}" TOKEN_FILENAME="${2}" TOKEN_VALUE="${3}" } -function deploy_cert { - local DOMAIN="${1}" KEYFILE="${2}" CERTFILE="${3}" CHAINFILE="${4}" +deploy_cert() { + local DOMAIN="${1}" KEYFILE="${2}" CERTFILE="${3}" FULLCHAINFILE="${4}" CHAINFILE="${5}" TIMESTAMP="${6}" } -function unchanged_cert { +unchanged_cert() { local DOMAIN="${1}" KEYFILE="${2}" CERTFILE="${3}" FULLCHAINFILE="${4}" CHAINFILE="${5}" } -HANDLER=$1; shift; $HANDLER $@ +invalid_challenge() { + local DOMAIN="${1}" RESPONSE="${2}" +} + +request_failure() { + local STATUSCODE="${1}" REASON="${2}" REQTYPE="${3}" +} + +exit_hook() { + + : +} + +HANDLER="$1"; shift +if [[ "${HANDLER}" =~ ^(deploy_challenge|clean_challenge|deploy_cert|unchanged_cert|invalid_challenge|request_failure|exit_hook)$ ]]; then + "$HANDLER" "$@" +fi From ada9acfcd04bcfadd77d708e539b9208f4071408 Mon Sep 17 00:00:00 2001 From: tianyu Date: Fri, 10 Feb 2017 16:49:55 +0800 Subject: [PATCH 4/6] Update le-cloudxns.sh --- le-dns/le-cloudxns.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/le-dns/le-cloudxns.sh b/le-dns/le-cloudxns.sh index a7695b5..9a67505 100755 --- a/le-dns/le-cloudxns.sh +++ b/le-dns/le-cloudxns.sh @@ -28,6 +28,8 @@ if [ ! -f "letsencrypt.sh" ];then chmod +x letsencrypt.sh fi +./letsencrypt.sh --register --accept-terms + if [ "$ECC" = "TRUE" ];then ./letsencrypt.sh -c -k ./cloudxns-hook.sh -t dns-01 -a secp384r1 else From c634e9dfc9b586fc6a642f4e46bfcf4da85e5c97 Mon Sep 17 00:00:00 2001 From: tianyu Date: Sun, 12 Feb 2017 10:23:03 +0800 Subject: [PATCH 5/6] remove time limit and fix exception --- u2helper/transmission.py | 11 ++++++++--- u2helper/u2.py | 12 +++++++----- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/u2helper/transmission.py b/u2helper/transmission.py index e577e01..cdf0f81 100644 --- a/u2helper/transmission.py +++ b/u2helper/transmission.py @@ -23,9 +23,13 @@ target_dir_parent = config["target_dir_parent"] target_dir = {"Lossless Music": target_dir_parent + u"/音乐/", "BDISO": target_dir_parent + u"/动漫/", "BDrip": target_dir_parent + u"/动漫/", + "U2-RBD": target_dir_parent + u"/动漫/", + "U2-Rip": target_dir_parent + u"/动漫/", u"加流重灌": target_dir_parent + u"/动漫/", u"外挂结构": target_dir_parent + u"/字幕/", "Others": target_dir_parent + u"/其他/", + "DVDrip": target_dir_parent + u"/动漫/", + "HDTVrip": target_dir_parent + u"/动漫/", "DVDISO": target_dir_parent + u"/动漫/"} headers = {'X-Transmission-Session-Id': '', @@ -36,7 +40,7 @@ list_payload = '''{"method": "torrent-get", "arguments": { r = requests.post(url, headers=headers, data=list_payload, verify=False) -soup = BeautifulSoup(r.text) +soup = BeautifulSoup(r.text, "html.parser") code = soup.find("code") headers['X-Transmission-Session-Id'] = code.text.split(': ')[1] @@ -62,10 +66,11 @@ for torrent in result["arguments"]["torrents"]: else: location_payload = '''{"method": "torrent-set-location", "arguments": {"move": true, "location": "''' + \ target_dir[seeding["catalog"]].encode('utf8') + \ - seeding["name"].encode('utf8').replace('/', '/') + '''", "ids": [''' + \ + seeding["name"].encode('utf8').replace('/', '/').replace(':', ':') \ + + '''", "ids": [''' + \ str(torrent["id"]) + ''']}}''' print location_payload r = requests.post(url, headers=headers, data=location_payload, verify=False) print r.text - time.sleep(1) + # time.sleep(1) break diff --git a/u2helper/u2.py b/u2helper/u2.py index d29d34b..1b0f31c 100644 --- a/u2helper/u2.py +++ b/u2helper/u2.py @@ -25,7 +25,7 @@ cookies = dict( r = requests.get(url, cookies=cookies) -soup = BeautifulSoup(r.text) +soup = BeautifulSoup(r.text, "html.parser") td_list = soup.find_all('td', {'class': 'rowfollow nowrap'}) @@ -52,10 +52,11 @@ for td, table in itertools.izip(td_list, table_list): u2torrent.id = int(table.find('a').get('href').split('&')[0].split('=')[1]) - info_r = requests.get(info_url + str(u2torrent.id), cookies=cookies) + print info_url + str(u2torrent.id) try: - info_soup = BeautifulSoup(info_r.text) + info_r = requests.get(info_url + str(u2torrent.id), cookies=cookies) + info_soup = BeautifulSoup(info_r.text, "html.parser") info_name = info_soup.find("span", {'class': 'title'}, text="[name]").parent.find("span", {'class': 'value'}) u2torrent.folder = info_name.text @@ -66,9 +67,10 @@ for td, table in itertools.izip(td_list, table_list): torrents.append(json.JSONDecoder().decode(u2torrent.json())) count += 1 - except AttributeError: + except Exception as e: + print str(e) print "Fetch folder name failed: " + u2torrent.title - time.sleep(3) + # time.sleep(3) torrents_dict["count"] = count torrents_dict["torrents"] = torrents From 3e521ca39434d4f197e5a7394544d6850482f0cb Mon Sep 17 00:00:00 2001 From: TastyBunz Date: Thu, 13 Apr 2017 11:25:15 +0800 Subject: [PATCH 6/6] little change on wget in my system, the script cannot run properly unless adding " --no-check-certificate" to wget --- lets-encrypt/letsencrypt.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lets-encrypt/letsencrypt.sh b/lets-encrypt/letsencrypt.sh index e3b18f7..435c5c4 100755 --- a/lets-encrypt/letsencrypt.sh +++ b/lets-encrypt/letsencrypt.sh @@ -49,7 +49,7 @@ fi openssl req -new -sha256 -key "$DOMAIN_KEY" -subj "/" -reqexts SAN -config <(cat $OPENSSL_CONF <(printf "[SAN]\nsubjectAltName=%s" "$DOMAINS")) > "$DOMAIN_CSR" -wget https://raw.githubusercontent.com/diafygi/acme-tiny/master/acme_tiny.py -O $ACME_TINY -o /dev/null +wget https://raw.githubusercontent.com/diafygi/acme-tiny/master/acme_tiny.py --no-check-certificate -O $ACME_TINY -o /dev/null if [ -f "$DOMAIN_CRT" ];then mv "$DOMAIN_CRT" "$DOMAIN_CRT-OLD-$(date +%y%m%d-%H%M%S)" @@ -65,7 +65,7 @@ if [ "$?" != 0 ];then fi if [ ! -f "lets-encrypt-x3-cross-signed.pem" ];then - wget https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem -o /dev/null + wget https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem --no-check-certificate -o /dev/null fi cat "$DOMAIN_CRT" lets-encrypt-x3-cross-signed.pem > "$DOMAIN_CHAINED_CRT"