Advertisement
Guest User

Discogs API Get Albums

a guest
Oct 28th, 2015
957
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.97 KB | None | 0 0
  1. import requests
  2. import lxml.html
  3.  
  4. def extract(el, css_sel):
  5.     ms = el.cssselect(css_sel)
  6.     return None if len(ms) != 1 else ms[0].text
  7.  
  8. def get_albums(aid):
  9.     url = "http://www.discogs.com/artist/" + str(aid) + "?limit=500"
  10.     r = requests.get(url, headers={'User-Agent': 'I wish your API was better?'})
  11.     root = lxml.html.fromstring(r.text)
  12.     albums = []
  13.  
  14.     for row in root.cssselect("#artist tr"):
  15.         section = extract(row, "td h3")
  16.         if section is not None:
  17.             if section == "Albums": continue
  18.             if section == "Singles & EPs": break
  19.  
  20.         id = row.get("data-object-id")
  21.         type = row.get("data-object-type")
  22.         title = extract(row, ".title a")
  23.         formats = extract(row, ".title .format")
  24.         year = extract(row, "td[data-header=\"Year: \"]")
  25.         albums.append((id, type, title, formats, year))
  26.  
  27.     return albums
  28.  
  29. if __name__ == "__main__":
  30.     for album in get_albums(99952):
  31.         print album
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement