Files
Gainsight/Scripts/Backup_Notes_Scripts/confluence_get.py

81 lines
2.4 KiB
Python

import requests
from requests.auth import HTTPBasicAuth
import json
import os
# Information
#url = "https://northpass.atlassian.net/wiki/rest/api/content/2210463745/child/page"
url = "https://northpass.atlassian.net/wiki/rest/api/content/"
auth = HTTPBasicAuth("nrasmussen@northpass.com", "qf9Il7X4wkthgQKBOIly5737")
rootdir = "/Users/normrasmussen/Documents/Northpass/CustomerNotes/"
def getCompany():
rootdir = "/Users/normrasmussen/Documents/Northpass/Scripts/Confluence_Notes/SampleNotes/"
companyName = os.listdir(rootdir)
for fileName in companyName:
company = fileName[:-3]
getPages(company)
def readNewNotes(company):
rootdir = "/Users/normrasmussen/Documents/Northpass/Scripts/Confluence_Notes/SampleNotes/"
with open(rootdir+company+".md", "r") as companyfile:
notes = companyfile.read()
conversion = markdown.markdown(notes)
createNewPage(company, conversion)
def getPages(company):
headers = {
"Accept": "application/json",
}
response = requests.request(
"GET",
url,
headers=headers,
auth=auth
)
jsonResponse = response.json()
for response in jsonResponse['results']:
if response['title'] == company:
print(f"{company} Found. Updating page....")
else:
print(f"{company} not found. Create new page...")
readNewNotes(company)
def createNewPage(company, notes):
url = "https://northpass.atlassian.net/wiki/rest/api/content/"
auth = HTTPBasicAuth("nrasmussen@northpass.com", "qf9Il7X4wkthgQKBOIly5737")
headers = {
"X-Atlassian-Token": "no-check",
"Accept": "application/json",
"Content-Type": "application/json"
}
payload = json.dumps( {
"type":"page",
"title": company,
"ancestors":[{"id":2210463745}],
"space":
{"key":"~350535240"},
"body":
{"storage":
{"value": notes,
"representation":"storage"}}
} )
response = requests.request(
"POST",
url,
data=payload,
headers=headers,
auth=auth
)
print("createNewPage function has run")
response = json.dumps(json.loads(response.text), sort_keys=True, indent=4, separators=(",", ": "))
print(response)
#jsonResponse = response.json()
#print(jsonResponse)
if __name__ == "__main__":
createNewPage()
#readNewNotes(company="Flink")