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.
8.1 KiB
8.1 KiB
<html>
<head>
</head>
</html>
In [ ]:
pip install gql
In [ ]:
import json
import os
import pprint
import requests
headers = {
"Authorization": "os.env(directus_token)",
"Content-Type": "application/json",
}
response = requests.get(
"https://cms.donavanaldrich.com/items/containers", headers=headers
)
data = response.json()
items = data["data"]
In [ ]:
%%sh
rm templates/wiki-js.md
cat << EOF >> templates/wiki-js.md
# {{ item.id }}
hello
In [ ]:
from jinja2 import Environment, FileSystemLoader, select_autoescape
env = Environment(
loader = FileSystemLoader(["templates"]),
# autoescape=select_autoescape()
)
t = env.get_template("wiki-js.md")
pprint.pprint(t.render(item=items[0],items=items))
#
with open("test.ini", "w") as external_file:
# add_text = "This text will be added to the file"
print(t.render(item=items[0],items=items), file=external_file)
external_file.close()
In [13]:
import json
import os
import pprint
import requests
from gql import Client, gql
from gql.transport.requests import RequestsHTTPTransport
cwd = os.getcwd()
print(cwd)
/home/jovyan/code/directus
In [14]:
with open("/home/jovyan/code/directus/docker.json") as f:
scrubbed_records = json.load(f)
# print(scrubbed_records[0])
item = scrubbed_records[0]
name = item["Name"]
image = item["Config"]["Image"]
# print(name)
# print(image)
image = image.replace(":latest", "")
name = name.replace("/", "")
print(name)
print(image)
active_workflow automaticmode/active_workflow
In [ ]:
for x in scrubbed_records:
# pprint.pprint(x)
image = image.replace(":latest", "")
name = name.replace("/", "")
data = x
In [ ]:
for x in scrubbed_records:
# pprint.pprint(x)
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 [ ]:
pip install gql[all] aiohttp
In [ ]:
import asyncio
from gql import gql, Client
from gql.transport.aiohttp import AIOHTTPTransport
transport = AIOHTTPTransport(
url="http://wiki:3000/graphql",
headers={
"Content-type": "application/json",
"Authorization": "os.env(directus_token)",
},
)
# Create a GraphQL client using the defined transport
# client = Client(transport=transport, fetch_schema_from_transport=True)
client = Client(transport=transport, fetch_schema_from_transport=False)
# client = Client(transport=transport, fetch_schema_from_transport=True)
query = gql(
'''
query pageList {
pages {
list(locale: "en") {
id
path
locale
title
description
contentType
isPublished
isPrivate
privateNS
createdAt
updatedAt
tags
}
}
}
'''
)
# result = await session.execute(query)
# print(result)
result = await client.execute_async(query)
print(result)
# asyncio.run(main())
# Execute the query on the transport
# result = await client.execute_async(query)
# print(result)
In [ ]:
from gql import gql, Client
from gql.transport.aiohttp import AIOHTTPTransport
# Select your transport with a defined url endpoint
transport = AIOHTTPTransport(url="https://countries.trevorblades.com/")
# Create a GraphQL client using the defined transport
client = Client(transport=transport, fetch_schema_from_transport=True)
# Provide a GraphQL query
query = gql(
"""
query getContinents {
continents {
code
name
}
}
"""
)
# Execute the query on the transport
result = client.execute(query)
print(result)