コード例 #1
0
ファイル: tests_json.py プロジェクト: buckhx/NBS-API-Python
def artist_search_test():
  global failed
  global passed
  api = API("nbsmobile");
  resp = json.loads(api.artistSearch("Kanye"))
  if resp["356"]["music_brainz_id"] == "164f0d73-1234-4e2c-8743-d77bf2191051":
    passed += 1
  else:
    failed += ["artist_search_test( )"]
コード例 #2
0
ファイル: tests_xml.py プロジェクト: pgarz/NBS-API-Python
def artist_search_test():
    global failed
    global passed
    api = API("nbsmobile", "", ".xml")
    resp = xml.dom.minidom.parseString(api.artistSearch("Kanye"))
    music_id = resp.getElementsByTagName("music_brainz_id")[0].childNodes[0].data
    if music_id == "164f0d73-1234-4e2c-8743-d77bf2191051":
        passed += 1
    else:
        failed.append("artist_search_test( )")
コード例 #3
0
def artist_search_test():
  global failed
  global passed
  api = API("nbsmobile", "", ".xml")
  resp = xml.dom.minidom.parseString(api.artistSearch("Kanye"))
  music_id = resp.getElementsByTagName("music_brainz_id")[0].childNodes[0].data
  if(music_id == "164f0d73-1234-4e2c-8743-d77bf2191051"):
    passed += 1
  else:
    failed.append("artist_search_test( )")
コード例 #4
0
def artist_search_test():
    global failed
    global passed
    api = API("nbsmobile")
    resp = json.loads(api.artistSearch("Kanye"))
    if resp["356"][
            "music_brainz_id"] == "164f0d73-1234-4e2c-8743-d77bf2191051":
        passed += 1
    else:
        failed += ["artist_search_test( )"]
コード例 #5
0
    "cdips-music-data-project",
    "0.1",
    'https://github.com/trxw/CDIPS_PandoraTeam',
)

# services summary
resp = json.loads(api.servicesList())
nbs_services = {key:resp[key]['human'] for key in resp.keys()}

# dataframe
artists = pd.DataFrame()

for query in queries:
    # search artist
    try:
        resp = json.loads(api.artistSearch(query))
        #print resp
        filtresp = {key:resp[key] for key in resp.keys() if (resp[key]['music_brainz_id'] is not None) }
        print filtresp
        
        for key in filtresp.keys():
            nbs_id = key
            mbz_id = filtresp[key]['music_brainz_id']
            nbs_name = filtresp[key]['name']

            try:
                result = musicbrainzngs.get_artist_by_id(mbz_id)
            except WebServiceError as exc:
                print("Something went wrong with the request: %s" % exc)
            else:
                mbz_name = ''; mbz_name=''; country='';begin_area=''
コード例 #6
0
# Get artist names from second column in file
i = 0
api = API("nbsmobile")
for artist in artistReader:

    # Get chart date, tracking start and end dates, artist name
    startDate = datetime.strptime('2018-08-14', '%Y-%m-%d')
    endDate = datetime.strptime('2018-11-09', '%Y-%m-%d')
    #startDate = datetime.strptime(sys.argv[2], '%Y-%m-%d')
    #endDate = datetime.strptime(sys.argv[3], '%Y-%m-%d')
    name = str(artist[0])

    # Get artist info
    try:
        artistInfo = json.loads(api.artistSearch(name.replace("_", ",")))
        nbsId = list(artistInfo.keys())[0]
    except:  # If artist doesn't exist in NBS
        print(datetime.now().strftime("%H:%M:%S") + "> artist " + str(i + 1) +
              " of " + str(artistCount) + " not found on NBS: " +
              str(artist[0]))
        i += 1
        continue

    # Get all NBS data for artist
    socialMediaData = json.loads(
        api.metricsArtist(nbsId, opt=[startDate, endDate, None]))

    # Get Twitter data
    for platform in list(socialMediaData):
        if platform['Service']['name'] == 'Twitter':