Skip to content

Instantly share code, notes, and snippets.

@nutti
Created August 1, 2020 02:43
Show Gist options
  • Save nutti/b6da379050345ae3bc2ab90c33d9265c to your computer and use it in GitHub Desktop.
Save nutti/b6da379050345ae3bc2ab90c33d9265c to your computer and use it in GitHub Desktop.
get_daily_build_blender_binary_url.py
from bs4 import BeautifulSoup
from urllib import request
import json
builder_blender_org_url = "https://builder.blender.org"
daily_build_url = builder_blender_org_url + "/download"
response = request.urlopen(daily_build_url)
soup = BeautifulSoup(response, "html.parser")
response.close()
result = {"items": []}
for os in ["windows", "linux", "macos"]:
for e in soup.find_all("li", class_=f"os {os}"):
r = {}
a_elem = e.find("a")
r["download_url"] = builder_blender_org_url + a_elem.attrs["href"]
build_elem = a_elem.find("span", class_="build")
r["platform"] = build_elem.text
name_elem = a_elem.find("span", class_="name")
release_name = name_elem.contents[0]
span_elem = name_elem.find("span", class_="build-var")
release_name += span_elem.text
r["release_name"] = release_name
small_elem = name_elem.find("small")
r["timestamp"] = small_elem.text
result["items"].append(r)
print(json.dumps(result))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment