-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsp.py
73 lines (59 loc) · 1.66 KB
/
sp.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
import json
import re
import http.client
import argparse
from bs4 import BeautifulSoup
import random
##func to get setlists
def getShow(show_type):
conn = http.client.HTTPSConnection("api.phish.net")
payload = "{}"
conn.request("GET", show_type, payload)
res = conn.getresponse()
data = res.read()
json_string = data.decode("utf-8")
parsed_json = json.loads(json_string)
return parsed_json
def sideProjects(artist_name, artist_id):
show_type = '/v3/shows/query?apikey=' + apikey + '&order=ASC&artistid=' + artist_id
setlist = getShow(show_type)
i = int(setlist["response"]["count"])
projects = []
showids = []
for x in range(i):
if setlist["response"]["data"][x]["billed_as"] not in projects:
projects.append(setlist["response"]["data"][x]["billed_as"])
print(artist_name + "has played in the following bands, choose one:")
z = 0
while z < len(projects):
print(str(z) + ". " + projects[z])
z += 1
z = 420
while True:
z = input("? ")
try:
z = int(z)
except ValueError:
z = 420
if z >= 0 and z <= (len(projects)-1):
break
else:
print("Please input a valid # in the list above.")
for x in range(i):
if setlist["response"]["data"][x]["billed_as"] == projects[z]:
showids.append(setlist["response"]["data"][x]["showid"])
i = len(showids)
if i == 1:
var = show_type = '/v3/setlists/get?apikey=' + apikey + '&showid=' + str(showids[0])
else:
i = random.randrange(0,i-1)
var = show_type = '/v3/setlists/get?apikey=' + apikey + '&showid=' + str(showids[i])
return(var)
###Get API Key
fo = open("api.txt","r")
apikey = fo.read()
fo.close()
callhome = True
########################
show_type= sideProjects("Page","9")
print(show_type)