You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
10 KiB
10 KiB
<html>
<head>
</head>
</html>
In [ ]:
!python -m pip install gql
In [ ]:
import csv
with open("/home/jovyan/code/directus/homebrew.txt") as f:
reader = csv.reader(f)
for row in reader:
item = row[0]
print(item)
In [ ]:
for x in scrubbed_records:
# pprint.pprint(x)
image = image.replace(":latest", "")
name = name.replace("/", "")
data = x
In [ ]:
for x in scrubbed_records:
item = x
name = item["Name"]
image = item["Config"]["Image"]
image = image.replace(":latest", "")
name = name.replace("/", "")
print(name)
print(image)
input_set = {"id": name, "image": image, "name": name, "raw": item}
my_headers = {
"Authorization": "os.env(directus_token)",
"Content-Type": "application/json",
}
response = requests.post(
"https://cms.donavanaldrich.com/items/containers",
headers=my_headers,
json=(input_set),
)
print(response.json())
In [ ]:
# https://formulae.brew.sh/api/cask.json
In [3]:
import json
import os
import pprint
import requests
my_headers = {"Content-Type": "application/json"}
raw_casks = requests.get("https://formulae.brew.sh/api/cask.json")
casks = raw_casks.json()
# pprint.pprint(casks[0])
{'appcast': None,
'artifacts': [['0 A.D..app'],
{'signal': {},
'trash': '~/Library/Saved Application '
'State/com.wildfiregames.0ad.savedState'}],
'auto_updates': None,
'caveats': None,
'conflicts_with': None,
'container': None,
'depends_on': {'macos': {'>=': ['10.12']}},
'desc': 'Real-time strategy game',
'full_token': '0-ad',
'homepage': 'https://play0ad.com/',
'installed': None,
'name': ['0 A.D.'],
'outdated': False,
'sha256': 'd1a2073dee3435d8a78bf289206248c9ed6be5e17f4ba1ac8412caf6d0eae0b0',
'tap': 'homebrew/cask',
'token': '0-ad',
'url': 'https://releases.wildfiregames.com/0ad-0.0.25b-alpha-osx64.dmg',
'version': '0.0.25b-alpha',
'versions': {}}
In [ ]:
for cask in casks:
name = cask["name"][0]
desc = cask["desc"]
homepage = cask["homepage"]
url = cask["url"]
tap = cask["tap"]
full_name = cask["full_token"]
print(full_token)
In [4]:
my_headers = {"Authorization": "os.env(directus_token)", "Content-Type": "application/json"}
for cask in casks:
name = cask["name"][0]
desc = cask["desc"]
homepage = cask["homepage"]
url = cask["url"]
tap = cask["tap"]
full_name = cask["full_token"]
category = "cask"
# raw
input_set = {
"id": full_name,
"description": desc,
"homepage": homepage,
"tap": tap,
"raw": cask,
"category": category,
}
response = requests.post(
"https://cms.donavanaldrich.com/items/all_homebrews",
headers=my_headers,
json=(input_set),
)
print(response.json())
--------------------------------------------------------------------------- NameError Traceback (most recent call last) /tmp/ipykernel_9736/2986828884.py in <cell line: 3>() 10 category = "cask" 11 ---> 12 input_set = {"id": full_name, "description": desc, "homepage": homepage, "tap": tap, "raw": raw, "category": category} 13 response = requests.post( 14 "https://cms.donavanaldrich.com/items/all_homebrews", NameError: name 'raw' is not defined
In [ ]:
# https://formulae.brew.sh/api/formula.json
In [ ]:
my_headers = {"Content-Type": "application/json"}
raw_brews = requests.get("https://formulae.brew.sh/api/formula.json")
brews = raw_brews.json()
pprint.pprint(brews[0])
In [ ]:
for brew in brews:
name = brew["name"]
desc = brew["desc"]
homepage = brew["homepage"]
url = brew["urls"]["stable"]["url"]
tap = brew["tap"]
full_name = brew["full_name"]
print(urls)
In [ ]:
my_headers = {"Authorization": "os.env(directus_token)", "Content-Type": "application/json"}
for brew in brews:
name = brew["name"]
desc = brew["desc"]
homepage = brew["homepage"]
url = brew["urls"]["stable"]["url"]
tap = brew["tap"]
full_name = brew["full_name"]
category = "brew"
input_set = {
"id": full_name,
"description": desc,
"homepage": homepage,
"tap": tap,
"raw": brew,
"category": category,
}
response = requests.post(
"https://cms.donavanaldrich.com/items/all_homebrews",
headers=my_headers,
json=(input_set),
)
print(response.json())
In [ ]: