1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
|
# -*- coding: cp1252 -*-
# This code is under GPL license #
import uno
import unohelper
import sys
import imp
import os
import locale
import json
import collections
import urllib.request
import datetime
now = datetime.datetime.now()
# a UNO struct later needed to create a document
from com.sun.star.text.ControlCharacter import PARAGRAPH_BREAK
from com.sun.star.text.TextContentAnchorType import AS_CHARACTER
from com.sun.star.awt import Size
from com.sun.star.lang import XMain
ctx = uno.getComponentContext()
oDoc = XSCRIPTCONTEXT.getDocument()
myDict = {
'alraune': 'Alraune',
'bretter': 'Bretter',
'brot': 'Brot',
'eisen': 'Eisen',
'eisenerz': 'Eisenerz',
'faesser': 'Fässer',
'fleisch': 'Fleisch',
'folianten': 'Spruchrollen',
'gemuese': 'Gemüse',
'geschirr': 'Geschirr',
'getreide': 'Getreide',
'hanf': 'Hanf',
'holz': 'Holz',
'honig': 'Honig',
'kerzen': 'Kerzen',
'kohle': 'Kohle',
'leder': 'Leder',
'lehm': 'Lehm',
'mehl': 'Mehl',
'met': 'Met',
'moebel': 'Möbel',
'naegel': 'Nägel',
'obst': 'Obst',
'papier': 'Papier',
'sattel': 'Sattel',
'seile': 'Seile',
'steine': 'Steine',
'steinziegel': 'Steinziegel',
'stoff': 'Stoff',
'update': 'Update',
'vieh': 'Vieh',
'werkzeuge': 'Werkzeuge',
'zauberwasser': 'Elixiere',
'ziegel': 'Ziegel'
}
def importPreiseDragosien():
"""Import foo bar"""
response = urllib.request.urlopen('http://serv.endoftheinternet.org/dragosien/marketsnapshot.json')
print ("http return code: {0}".format(response.getcode()))
jsonString = response.readall().decode('utf-8')
snapshot = json.loads(jsonString)
snapshot = collections.OrderedDict(sorted(snapshot.items()))
cnt = 4
# open a writer document
#oSheet = oDoc.CurrentController.ActiveSheet
#oSelection = ThisComponent.CurrentSelection
oSheets = oDoc.getSheets()
oSheet = oSheets.getByName('AktuellePreise')
oCell = oSheet.getCellRangeByName("B" + str(cnt))
oCell.String = now.strftime("%Y-%m-%d %H:%M")
cnt = cnt + 1
for product in snapshot:
prod_dict = snapshot[product]
value_type = type ( prod_dict )
if value_type is dict:
oCell = oSheet.getCellRangeByName("B" + str(cnt))
oCel2 = oSheet.getCellRangeByName("C" + str(cnt))
oCel3 = oSheet.getCellRangeByName("D" + str(cnt))
oCel4 = oSheet.getCellRangeByName("E" + str(cnt))
#oCel5 = oSheet.getCellRangeByName("F" + str(cnt))
oCell.String = str(myDict[product])
oCel2.Value = float(prod_dict['price'][0:-2])
oCel3.Value = float(prod_dict['Ubuy'])
oCel4.Value = float(prod_dict['Usell'])
cnt = cnt + 1
#print (" {0}:\t Preis {1} kaufen: {2:.2f} verkaufen: {3:.2f}".format(myDict[product],prod_dict['price'][0:-2],prod_dict['Ubuy'],prod_dict['Usell']))
g_exportedScripts = importPreiseDragosien,
|