kerykeion 4.12.3__py3-none-any.whl → 4.18.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of kerykeion might be problematic. Click here for more details.
- kerykeion/__init__.py +3 -1
- kerykeion/aspects/aspects_utils.py +40 -123
- kerykeion/aspects/natal_aspects.py +34 -25
- kerykeion/aspects/synastry_aspects.py +34 -28
- kerykeion/astrological_subject.py +199 -196
- kerykeion/charts/charts_utils.py +701 -62
- kerykeion/charts/draw_planets.py +407 -0
- kerykeion/charts/kerykeion_chart_svg.py +534 -1140
- kerykeion/charts/templates/aspect_grid_only.xml +452 -0
- kerykeion/charts/templates/chart.xml +88 -70
- kerykeion/charts/templates/wheel_only.xml +499 -0
- kerykeion/charts/themes/classic.css +82 -0
- kerykeion/charts/themes/dark-high-contrast.css +121 -0
- kerykeion/charts/themes/dark.css +121 -0
- kerykeion/charts/themes/light.css +117 -0
- kerykeion/enums.py +1 -0
- kerykeion/ephemeris_data.py +178 -0
- kerykeion/fetch_geonames.py +2 -3
- kerykeion/kr_types/chart_types.py +6 -16
- kerykeion/kr_types/kr_literals.py +12 -3
- kerykeion/kr_types/kr_models.py +77 -32
- kerykeion/kr_types/settings_models.py +4 -10
- kerykeion/relationship_score/__init__.py +2 -0
- kerykeion/relationship_score/relationship_score.py +175 -0
- kerykeion/relationship_score/relationship_score_factory.py +275 -0
- kerykeion/report.py +6 -3
- kerykeion/settings/kerykeion_settings.py +6 -1
- kerykeion/settings/kr.config.json +256 -102
- kerykeion/utilities.py +122 -217
- {kerykeion-4.12.3.dist-info → kerykeion-4.18.0.dist-info}/METADATA +40 -10
- kerykeion-4.18.0.dist-info/RECORD +42 -0
- kerykeion/relationship_score.py +0 -205
- kerykeion-4.12.3.dist-info/RECORD +0 -32
- {kerykeion-4.12.3.dist-info → kerykeion-4.18.0.dist-info}/LICENSE +0 -0
- {kerykeion-4.12.3.dist-info → kerykeion-4.18.0.dist-info}/WHEEL +0 -0
- {kerykeion-4.12.3.dist-info → kerykeion-4.18.0.dist-info}/entry_points.txt +0 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
/* Main Colors */
|
|
3
|
+
--kerykeion-chart-color-paper-0: #000000;
|
|
4
|
+
--kerykeion-chart-color-paper-1: #ffffff;
|
|
5
|
+
--kerykeion-chart-color-zodiac-bg-0: #ff7200;
|
|
6
|
+
--kerykeion-chart-color-zodiac-bg-1: #6b3d00;
|
|
7
|
+
--kerykeion-chart-color-zodiac-bg-2: #69acf1;
|
|
8
|
+
--kerykeion-chart-color-zodiac-bg-3: #2b4972;
|
|
9
|
+
--kerykeion-chart-color-zodiac-bg-4: #ff7200;
|
|
10
|
+
--kerykeion-chart-color-zodiac-bg-5: #6b3d00;
|
|
11
|
+
--kerykeion-chart-color-zodiac-bg-6: #69acf1;
|
|
12
|
+
--kerykeion-chart-color-zodiac-bg-7: #2b4972;
|
|
13
|
+
--kerykeion-chart-color-zodiac-bg-8: #ff7200;
|
|
14
|
+
--kerykeion-chart-color-zodiac-bg-9: #6b3d00;
|
|
15
|
+
--kerykeion-chart-color-zodiac-bg-10: #69acf1;
|
|
16
|
+
--kerykeion-chart-color-zodiac-bg-11: #2b4972;
|
|
17
|
+
--kerykeion-chart-color-zodiac-icon-0: #ff7200;
|
|
18
|
+
--kerykeion-chart-color-zodiac-icon-1: #6b3d00;
|
|
19
|
+
--kerykeion-chart-color-zodiac-icon-2: #69acf1;
|
|
20
|
+
--kerykeion-chart-color-zodiac-icon-3: #2b4972;
|
|
21
|
+
--kerykeion-chart-color-zodiac-icon-4: #ff7200;
|
|
22
|
+
--kerykeion-chart-color-zodiac-icon-5: #6b3d00;
|
|
23
|
+
--kerykeion-chart-color-zodiac-icon-6: #69acf1;
|
|
24
|
+
--kerykeion-chart-color-zodiac-icon-7: #2b4972;
|
|
25
|
+
--kerykeion-chart-color-zodiac-icon-8: #ff7200;
|
|
26
|
+
--kerykeion-chart-color-zodiac-icon-9: #6b3d00;
|
|
27
|
+
--kerykeion-chart-color-zodiac-icon-10: #69acf1;
|
|
28
|
+
--kerykeion-chart-color-zodiac-icon-11: #2b4972;
|
|
29
|
+
--kerykeion-chart-color-zodiac-radix-ring-0: #ff0000;
|
|
30
|
+
--kerykeion-chart-color-zodiac-radix-ring-1: #ff0000;
|
|
31
|
+
--kerykeion-chart-color-zodiac-radix-ring-2: #ff0000;
|
|
32
|
+
--kerykeion-chart-color-zodiac-transit-ring-0: #ff0000;
|
|
33
|
+
--kerykeion-chart-color-zodiac-transit-ring-1: #ff0000;
|
|
34
|
+
--kerykeion-chart-color-zodiac-transit-ring-2: #0000ff;
|
|
35
|
+
--kerykeion-chart-color-zodiac-transit-ring-3: #0000ff;
|
|
36
|
+
--kerykeion-chart-color-houses-radix-line: #ff0000;
|
|
37
|
+
--kerykeion-chart-color-houses-transit-line: #0000ff;
|
|
38
|
+
--kerykeion-chart-color-lunar-phase-0: #000000;
|
|
39
|
+
--kerykeion-chart-color-lunar-phase-1: #ffffff;
|
|
40
|
+
|
|
41
|
+
/* Aspects */
|
|
42
|
+
--kerykeion-chart-color-conjunction: #5757e2;
|
|
43
|
+
--kerykeion-chart-color-semi-sextile: #810757;
|
|
44
|
+
--kerykeion-chart-color-semi-square: #b14e58;
|
|
45
|
+
--kerykeion-chart-color-sextile: #d59e28;
|
|
46
|
+
--kerykeion-chart-color-quintile: #1f99b3;
|
|
47
|
+
--kerykeion-chart-color-square: #dc0000;
|
|
48
|
+
--kerykeion-chart-color-trine: #36d100;
|
|
49
|
+
--kerykeion-chart-color-sesquiquadrate: #985a10;
|
|
50
|
+
--kerykeion-chart-color-biquintile: #7a9810;
|
|
51
|
+
--kerykeion-chart-color-quincunx: #26bbcf;
|
|
52
|
+
--kerykeion-chart-color-opposition: #510060;
|
|
53
|
+
|
|
54
|
+
/* Planets */
|
|
55
|
+
--kerykeion-chart-color-sun: #984b00;
|
|
56
|
+
--kerykeion-chart-color-moon: #150052;
|
|
57
|
+
--kerykeion-chart-color-mercury: #520800;
|
|
58
|
+
--kerykeion-chart-color-venus: #400052;
|
|
59
|
+
--kerykeion-chart-color-mars: #540000;
|
|
60
|
+
--kerykeion-chart-color-jupiter: #47133d;
|
|
61
|
+
--kerykeion-chart-color-saturn: #124500;
|
|
62
|
+
--kerykeion-chart-color-uranus: #6f0766;
|
|
63
|
+
--kerykeion-chart-color-neptune: #06537f;
|
|
64
|
+
--kerykeion-chart-color-pluto: #713f04;
|
|
65
|
+
--kerykeion-chart-color-mean-node: #4c1541;
|
|
66
|
+
--kerykeion-chart-color-true-node: #4c1541;
|
|
67
|
+
--kerykeion-chart-color-chiron: #666f06;
|
|
68
|
+
--kerykeion-chart-color-first-house: #ff7e00;
|
|
69
|
+
--kerykeion-chart-color-tenth-house: #ff0000;
|
|
70
|
+
--kerykeion-chart-color-seventh-house: #0000ff;
|
|
71
|
+
--kerykeion-chart-color-fourth-house: #000000;
|
|
72
|
+
--kerykeion-chart-color-mean-lilith: #000000;
|
|
73
|
+
|
|
74
|
+
/* Elements Percentage */
|
|
75
|
+
--kerykeion-chart-color-air-percentage: #6f76d1;
|
|
76
|
+
--kerykeion-chart-color-earth-percentage: #6a2d04;
|
|
77
|
+
--kerykeion-chart-color-fire-percentage: #ff6600;
|
|
78
|
+
--kerykeion-chart-color-water-percentage: #630e73;
|
|
79
|
+
|
|
80
|
+
/* Other */
|
|
81
|
+
--kerykeion-chart-color-house-number: #f00;
|
|
82
|
+
}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
/* -------- */
|
|
3
|
+
/* General */
|
|
4
|
+
/* ------- */
|
|
5
|
+
--kerykeion-color-black: #000000;
|
|
6
|
+
--kerykeion-color-white: #ffffff;
|
|
7
|
+
|
|
8
|
+
--kerykeion-color-neutral-content: #c8cbd0;
|
|
9
|
+
--kerykeion-color-base-content: #ccd0d4;
|
|
10
|
+
--kerykeion-color-primary: #38bdf8;
|
|
11
|
+
--kerykeion-color-secondary: #818cf8;
|
|
12
|
+
--kerykeion-color-accent: #f471b5;
|
|
13
|
+
--kerykeion-color-neutral: #1e293b;
|
|
14
|
+
--kerykeion-color-base-100: #0f172a;
|
|
15
|
+
--kerykeion-color-info: #0ca5e9;
|
|
16
|
+
--kerykeion-color-info-content: #000000;
|
|
17
|
+
--kerykeion-color-success: #2dd4bf;
|
|
18
|
+
--kerykeion-color-warning: #f4bf50;
|
|
19
|
+
--kerykeion-color-error: #fb7085;
|
|
20
|
+
|
|
21
|
+
/* Zodiac */
|
|
22
|
+
--kerykeion-color-base-200: #0a1020;
|
|
23
|
+
--kerykeion-color-base-300: #27303c;
|
|
24
|
+
|
|
25
|
+
/* ----------- */
|
|
26
|
+
/* Chart Color */
|
|
27
|
+
/* ----------- */
|
|
28
|
+
|
|
29
|
+
/* Main colors */
|
|
30
|
+
--kerykeion-chart-color-paper-0: var(--kerykeion-color-neutral-content);
|
|
31
|
+
--kerykeion-chart-color-paper-1: var(--kerykeion-color-base-100);
|
|
32
|
+
|
|
33
|
+
/* Zodiac Sign Sectors */
|
|
34
|
+
--kerykeion-chart-color-zodiac-bg-0: var(--kerykeion-color-base-200);
|
|
35
|
+
--kerykeion-chart-color-zodiac-bg-1: var(--kerykeion-color-base-300);
|
|
36
|
+
--kerykeion-chart-color-zodiac-bg-2: var(--kerykeion-color-base-200);
|
|
37
|
+
--kerykeion-chart-color-zodiac-bg-3: var(--kerykeion-color-base-300);
|
|
38
|
+
--kerykeion-chart-color-zodiac-bg-4: var(--kerykeion-color-base-200);
|
|
39
|
+
--kerykeion-chart-color-zodiac-bg-5: var(--kerykeion-color-base-300);
|
|
40
|
+
--kerykeion-chart-color-zodiac-bg-6: var(--kerykeion-color-base-200);
|
|
41
|
+
--kerykeion-chart-color-zodiac-bg-7: var(--kerykeion-color-base-300);
|
|
42
|
+
--kerykeion-chart-color-zodiac-bg-8: var(--kerykeion-color-base-200);
|
|
43
|
+
--kerykeion-chart-color-zodiac-bg-9: var(--kerykeion-color-base-300);
|
|
44
|
+
--kerykeion-chart-color-zodiac-bg-10: var(--kerykeion-color-base-200);
|
|
45
|
+
--kerykeion-chart-color-zodiac-bg-11: var(--kerykeion-color-base-300);
|
|
46
|
+
|
|
47
|
+
/* Zodiac Sign Rings */
|
|
48
|
+
--kerykeion-chart-color-zodiac-radix-ring-0: var(--kerykeion-color-neutral);
|
|
49
|
+
--kerykeion-chart-color-zodiac-radix-ring-1: var(--kerykeion-color-neutral);
|
|
50
|
+
--kerykeion-chart-color-zodiac-radix-ring-2: var(--kerykeion-color-neutral);
|
|
51
|
+
--kerykeion-chart-color-zodiac-transit-ring-0: var(--kerykeion-color-neutral);
|
|
52
|
+
--kerykeion-chart-color-zodiac-transit-ring-1: var(--kerykeion-color-neutral);
|
|
53
|
+
--kerykeion-chart-color-zodiac-transit-ring-2: var(--kerykeion-color-neutral);
|
|
54
|
+
--kerykeion-chart-color-zodiac-transit-ring-3: var(--kerykeion-color-neutral);
|
|
55
|
+
--kerykeion-chart-color-houses-radix-line: var(
|
|
56
|
+
--kerykeion-color-base-content
|
|
57
|
+
);
|
|
58
|
+
--kerykeion-chart-color-houses-transit-line: var(
|
|
59
|
+
--kerykeion-color-base-content
|
|
60
|
+
);
|
|
61
|
+
|
|
62
|
+
/* Aspects */
|
|
63
|
+
--kerykeion-chart-color-conjunction: var(--kerykeion-color-success);
|
|
64
|
+
--kerykeion-chart-color-semi-sextile: var(--kerykeion-color-success);
|
|
65
|
+
--kerykeion-chart-color-semi-square: var(--kerykeion-color-error);
|
|
66
|
+
--kerykeion-chart-color-sextile: var(--kerykeion-color-success);
|
|
67
|
+
--kerykeion-chart-color-quintile: var(--kerykeion-color-secondary);
|
|
68
|
+
--kerykeion-chart-color-square: var(--kerykeion-color-error);
|
|
69
|
+
--kerykeion-chart-color-trine: var(--kerykeion-color-success);
|
|
70
|
+
--kerykeion-chart-color-sesquiquadrate: var(--kerykeion-color-error);
|
|
71
|
+
--kerykeion-chart-color-biquintile: var(--kerykeion-color-secondary);
|
|
72
|
+
--kerykeion-chart-color-quincunx: var(--kerykeion-color-secondary);
|
|
73
|
+
--kerykeion-chart-color-opposition: var(--kerykeion-color-error);
|
|
74
|
+
|
|
75
|
+
/* Planets */
|
|
76
|
+
--kerykeion-chart-color-sun: var(--kerykeion-color-warning);
|
|
77
|
+
--kerykeion-chart-color-moon: var(--kerykeion-color-secondary);
|
|
78
|
+
--kerykeion-chart-color-mercury: var(--kerykeion-color-primary);
|
|
79
|
+
--kerykeion-chart-color-venus: var(--kerykeion-color-accent);
|
|
80
|
+
--kerykeion-chart-color-mars: var(--kerykeion-color-warning);
|
|
81
|
+
--kerykeion-chart-color-jupiter: var(--kerykeion-color-primary);
|
|
82
|
+
--kerykeion-chart-color-saturn: var(--kerykeion-color-secondary);
|
|
83
|
+
--kerykeion-chart-color-uranus: var(--kerykeion-color-accent);
|
|
84
|
+
--kerykeion-chart-color-neptune: var(--kerykeion-color-primary);
|
|
85
|
+
--kerykeion-chart-color-pluto: var(--kerykeion-color-secondary);
|
|
86
|
+
--kerykeion-chart-color-mean-node: var(--kerykeion-color-warning);
|
|
87
|
+
--kerykeion-chart-color-true-node: var(--kerykeion-color-warning);
|
|
88
|
+
--kerykeion-chart-color-chiron: var(--kerykeion-color-secondary);
|
|
89
|
+
--kerykeion-chart-color-first-house: var(--kerykeion-color-warning);
|
|
90
|
+
--kerykeion-chart-color-tenth-house: var(--kerykeion-color-warning);
|
|
91
|
+
--kerykeion-chart-color-seventh-house: var(--kerykeion-color-warning);
|
|
92
|
+
--kerykeion-chart-color-fourth-house: var(--kerykeion-color-warning);
|
|
93
|
+
--kerykeion-chart-color-mean-lilith: var(--kerykeion-color-secondary);
|
|
94
|
+
|
|
95
|
+
/* Zodiac Signs */
|
|
96
|
+
--kerykeion-chart-color-zodiac-icon-0: var(--kerykeion-color-accent);
|
|
97
|
+
--kerykeion-chart-color-zodiac-icon-1: var(--kerykeion-color-warning);
|
|
98
|
+
--kerykeion-chart-color-zodiac-icon-2: var(--kerykeion-color-primary);
|
|
99
|
+
--kerykeion-chart-color-zodiac-icon-3: var(--kerykeion-color-secondary);
|
|
100
|
+
--kerykeion-chart-color-zodiac-icon-4: var(--kerykeion-color-accent);
|
|
101
|
+
--kerykeion-chart-color-zodiac-icon-5: var(--kerykeion-color-warning);
|
|
102
|
+
--kerykeion-chart-color-zodiac-icon-6: var(--kerykeion-color-primary);
|
|
103
|
+
--kerykeion-chart-color-zodiac-icon-7: var(--kerykeion-color-secondary);
|
|
104
|
+
--kerykeion-chart-color-zodiac-icon-8: var(--kerykeion-color-accent);
|
|
105
|
+
--kerykeion-chart-color-zodiac-icon-9: var(--kerykeion-color-warning);
|
|
106
|
+
--kerykeion-chart-color-zodiac-icon-10: var(--kerykeion-color-primary);
|
|
107
|
+
--kerykeion-chart-color-zodiac-icon-11: var(--kerykeion-color-secondary);
|
|
108
|
+
|
|
109
|
+
/* Elements Percentage */
|
|
110
|
+
--kerykeion-chart-color-air-percentage: var(--kerykeion-color-primary);
|
|
111
|
+
--kerykeion-chart-color-earth-percentage: var(--kerykeion-color-warning);
|
|
112
|
+
--kerykeion-chart-color-fire-percentage: var(--kerykeion-color-accent);
|
|
113
|
+
--kerykeion-chart-color-water-percentage: var(--kerykeion-color-secondary);
|
|
114
|
+
|
|
115
|
+
/* Aspects */
|
|
116
|
+
--kerykeion-chart-color-lunar-phase-0: var(--kerykeion-color-black);
|
|
117
|
+
--kerykeion-chart-color-lunar-phase-1: var(--kerykeion-color-white);
|
|
118
|
+
|
|
119
|
+
/* Houses Numbers */
|
|
120
|
+
--kerykeion-chart-color-house-number: var(--kerykeion-color-base-content);
|
|
121
|
+
}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
/* -------- */
|
|
3
|
+
/* General */
|
|
4
|
+
/* ------- */
|
|
5
|
+
--kerykeion-color-black: #000000;
|
|
6
|
+
--kerykeion-color-white: #ffffff;
|
|
7
|
+
|
|
8
|
+
--kerykeion-color-neutral-content: #c8cbd0;
|
|
9
|
+
--kerykeion-color-base-content: #ccd0d4;
|
|
10
|
+
--kerykeion-color-primary: #38bdf8;
|
|
11
|
+
--kerykeion-color-secondary: #818cf8;
|
|
12
|
+
--kerykeion-color-accent: #f471b5;
|
|
13
|
+
--kerykeion-color-neutral: #1e293b;
|
|
14
|
+
--kerykeion-color-base-100: #0f172a;
|
|
15
|
+
--kerykeion-color-info: #0ca5e9;
|
|
16
|
+
--kerykeion-color-info-content: #000000;
|
|
17
|
+
--kerykeion-color-success: #2dd4bf;
|
|
18
|
+
--kerykeion-color-warning: #f4bf50;
|
|
19
|
+
--kerykeion-color-error: #fb7085;
|
|
20
|
+
|
|
21
|
+
/* Zodiac */
|
|
22
|
+
--kerykeion-color-base-200: #0a1020;
|
|
23
|
+
--kerykeion-color-base-300: #171f2c;
|
|
24
|
+
|
|
25
|
+
/* ----------- */
|
|
26
|
+
/* Chart Color */
|
|
27
|
+
/* ----------- */
|
|
28
|
+
|
|
29
|
+
/* Main colors */
|
|
30
|
+
--kerykeion-chart-color-paper-0: var(--kerykeion-color-neutral-content);
|
|
31
|
+
--kerykeion-chart-color-paper-1: var(--kerykeion-color-base-100);
|
|
32
|
+
|
|
33
|
+
/* Zodiac Sign Sectors */
|
|
34
|
+
--kerykeion-chart-color-zodiac-bg-0: var(--kerykeion-color-base-200);
|
|
35
|
+
--kerykeion-chart-color-zodiac-bg-1: var(--kerykeion-color-base-300);
|
|
36
|
+
--kerykeion-chart-color-zodiac-bg-2: var(--kerykeion-color-base-200);
|
|
37
|
+
--kerykeion-chart-color-zodiac-bg-3: var(--kerykeion-color-base-300);
|
|
38
|
+
--kerykeion-chart-color-zodiac-bg-4: var(--kerykeion-color-base-200);
|
|
39
|
+
--kerykeion-chart-color-zodiac-bg-5: var(--kerykeion-color-base-300);
|
|
40
|
+
--kerykeion-chart-color-zodiac-bg-6: var(--kerykeion-color-base-200);
|
|
41
|
+
--kerykeion-chart-color-zodiac-bg-7: var(--kerykeion-color-base-300);
|
|
42
|
+
--kerykeion-chart-color-zodiac-bg-8: var(--kerykeion-color-base-200);
|
|
43
|
+
--kerykeion-chart-color-zodiac-bg-9: var(--kerykeion-color-base-300);
|
|
44
|
+
--kerykeion-chart-color-zodiac-bg-10: var(--kerykeion-color-base-200);
|
|
45
|
+
--kerykeion-chart-color-zodiac-bg-11: var(--kerykeion-color-base-300);
|
|
46
|
+
|
|
47
|
+
/* Zodiac Sign Rings */
|
|
48
|
+
--kerykeion-chart-color-zodiac-radix-ring-0: var(--kerykeion-color-neutral);
|
|
49
|
+
--kerykeion-chart-color-zodiac-radix-ring-1: var(--kerykeion-color-neutral);
|
|
50
|
+
--kerykeion-chart-color-zodiac-radix-ring-2: var(--kerykeion-color-neutral);
|
|
51
|
+
--kerykeion-chart-color-zodiac-transit-ring-0: var(--kerykeion-color-neutral);
|
|
52
|
+
--kerykeion-chart-color-zodiac-transit-ring-1: var(--kerykeion-color-neutral);
|
|
53
|
+
--kerykeion-chart-color-zodiac-transit-ring-2: var(--kerykeion-color-neutral);
|
|
54
|
+
--kerykeion-chart-color-zodiac-transit-ring-3: var(--kerykeion-color-neutral);
|
|
55
|
+
--kerykeion-chart-color-houses-radix-line: var(
|
|
56
|
+
--kerykeion-color-base-content
|
|
57
|
+
);
|
|
58
|
+
--kerykeion-chart-color-houses-transit-line: var(
|
|
59
|
+
--kerykeion-color-base-content
|
|
60
|
+
);
|
|
61
|
+
|
|
62
|
+
/* Aspects */
|
|
63
|
+
--kerykeion-chart-color-conjunction: var(--kerykeion-color-success);
|
|
64
|
+
--kerykeion-chart-color-semi-sextile: var(--kerykeion-color-success);
|
|
65
|
+
--kerykeion-chart-color-semi-square: var(--kerykeion-color-error);
|
|
66
|
+
--kerykeion-chart-color-sextile: var(--kerykeion-color-success);
|
|
67
|
+
--kerykeion-chart-color-quintile: var(--kerykeion-color-secondary);
|
|
68
|
+
--kerykeion-chart-color-square: var(--kerykeion-color-error);
|
|
69
|
+
--kerykeion-chart-color-trine: var(--kerykeion-color-success);
|
|
70
|
+
--kerykeion-chart-color-sesquiquadrate: var(--kerykeion-color-error);
|
|
71
|
+
--kerykeion-chart-color-biquintile: var(--kerykeion-color-secondary);
|
|
72
|
+
--kerykeion-chart-color-quincunx: var(--kerykeion-color-secondary);
|
|
73
|
+
--kerykeion-chart-color-opposition: var(--kerykeion-color-error);
|
|
74
|
+
|
|
75
|
+
/* Planets */
|
|
76
|
+
--kerykeion-chart-color-sun: var(--kerykeion-color-warning);
|
|
77
|
+
--kerykeion-chart-color-moon: var(--kerykeion-color-secondary);
|
|
78
|
+
--kerykeion-chart-color-mercury: var(--kerykeion-color-primary);
|
|
79
|
+
--kerykeion-chart-color-venus: var(--kerykeion-color-accent);
|
|
80
|
+
--kerykeion-chart-color-mars: var(--kerykeion-color-warning);
|
|
81
|
+
--kerykeion-chart-color-jupiter: var(--kerykeion-color-primary);
|
|
82
|
+
--kerykeion-chart-color-saturn: var(--kerykeion-color-secondary);
|
|
83
|
+
--kerykeion-chart-color-uranus: var(--kerykeion-color-accent);
|
|
84
|
+
--kerykeion-chart-color-neptune: var(--kerykeion-color-primary);
|
|
85
|
+
--kerykeion-chart-color-pluto: var(--kerykeion-color-secondary);
|
|
86
|
+
--kerykeion-chart-color-mean-node: var(--kerykeion-color-warning);
|
|
87
|
+
--kerykeion-chart-color-true-node: var(--kerykeion-color-warning);
|
|
88
|
+
--kerykeion-chart-color-chiron: var(--kerykeion-color-secondary);
|
|
89
|
+
--kerykeion-chart-color-first-house: var(--kerykeion-color-warning);
|
|
90
|
+
--kerykeion-chart-color-tenth-house: var(--kerykeion-color-warning);
|
|
91
|
+
--kerykeion-chart-color-seventh-house: var(--kerykeion-color-warning);
|
|
92
|
+
--kerykeion-chart-color-fourth-house: var(--kerykeion-color-warning);
|
|
93
|
+
--kerykeion-chart-color-mean-lilith: var(--kerykeion-color-secondary);
|
|
94
|
+
|
|
95
|
+
/* Zodiac Signs */
|
|
96
|
+
--kerykeion-chart-color-zodiac-icon-0: var(--kerykeion-color-accent);
|
|
97
|
+
--kerykeion-chart-color-zodiac-icon-1: var(--kerykeion-color-warning);
|
|
98
|
+
--kerykeion-chart-color-zodiac-icon-2: var(--kerykeion-color-primary);
|
|
99
|
+
--kerykeion-chart-color-zodiac-icon-3: var(--kerykeion-color-secondary);
|
|
100
|
+
--kerykeion-chart-color-zodiac-icon-4: var(--kerykeion-color-accent);
|
|
101
|
+
--kerykeion-chart-color-zodiac-icon-5: var(--kerykeion-color-warning);
|
|
102
|
+
--kerykeion-chart-color-zodiac-icon-6: var(--kerykeion-color-primary);
|
|
103
|
+
--kerykeion-chart-color-zodiac-icon-7: var(--kerykeion-color-secondary);
|
|
104
|
+
--kerykeion-chart-color-zodiac-icon-8: var(--kerykeion-color-accent);
|
|
105
|
+
--kerykeion-chart-color-zodiac-icon-9: var(--kerykeion-color-warning);
|
|
106
|
+
--kerykeion-chart-color-zodiac-icon-10: var(--kerykeion-color-primary);
|
|
107
|
+
--kerykeion-chart-color-zodiac-icon-11: var(--kerykeion-color-secondary);
|
|
108
|
+
|
|
109
|
+
/* Elements Percentage */
|
|
110
|
+
--kerykeion-chart-color-air-percentage: var(--kerykeion-color-primary);
|
|
111
|
+
--kerykeion-chart-color-earth-percentage: var(--kerykeion-color-warning);
|
|
112
|
+
--kerykeion-chart-color-fire-percentage: var(--kerykeion-color-accent);
|
|
113
|
+
--kerykeion-chart-color-water-percentage: var(--kerykeion-color-secondary);
|
|
114
|
+
|
|
115
|
+
/* Aspects */
|
|
116
|
+
--kerykeion-chart-color-lunar-phase-0: var(--kerykeion-color-black);
|
|
117
|
+
--kerykeion-chart-color-lunar-phase-1: var(--kerykeion-color-white);
|
|
118
|
+
|
|
119
|
+
/* Houses Numbers */
|
|
120
|
+
--kerykeion-chart-color-house-number: var(--kerykeion-color-base-content);
|
|
121
|
+
}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
/* -------- */
|
|
3
|
+
/* General */
|
|
4
|
+
/* ------- */
|
|
5
|
+
--kerykeion-color-black: #000000;
|
|
6
|
+
--kerykeion-color-white: #ffffff;
|
|
7
|
+
|
|
8
|
+
--kerykeion-color-neutral-content: #333c4d;
|
|
9
|
+
--kerykeion-color-base-content: #333c4d;
|
|
10
|
+
--kerykeion-color-primary: #65cc8a;
|
|
11
|
+
--kerykeion-color-secondary: #367bfb;
|
|
12
|
+
--kerykeion-color-accent: #f68067;
|
|
13
|
+
--kerykeion-color-neutral: #333c4d;
|
|
14
|
+
--kerykeion-color-base-100: #ffffff;
|
|
15
|
+
--kerykeion-color-info: #00b5ff;
|
|
16
|
+
--kerykeion-color-info-content: #000000;
|
|
17
|
+
--kerykeion-color-success: #00a96e;
|
|
18
|
+
--kerykeion-color-warning: #ffbe00;
|
|
19
|
+
--kerykeion-color-error: #ff5761;
|
|
20
|
+
|
|
21
|
+
/* Zodiac */
|
|
22
|
+
--kerykeion-color-base-200: #d1d1d1;
|
|
23
|
+
--kerykeion-color-base-300: rgb(113 113 122);
|
|
24
|
+
|
|
25
|
+
/* ----------- */
|
|
26
|
+
/* Chart Color */
|
|
27
|
+
/* ----------- */
|
|
28
|
+
|
|
29
|
+
/* Main colors */
|
|
30
|
+
--kerykeion-chart-color-paper-0: var(--kerykeion-color-neutral-content);
|
|
31
|
+
--kerykeion-chart-color-paper-1: var(--kerykeion-color-base-100);
|
|
32
|
+
|
|
33
|
+
/* Zodiac Sign Sectors */
|
|
34
|
+
--kerykeion-chart-color-zodiac-bg-0: var(--kerykeion-color-base-200);
|
|
35
|
+
--kerykeion-chart-color-zodiac-bg-1: var(--kerykeion-color-base-300);
|
|
36
|
+
--kerykeion-chart-color-zodiac-bg-2: var(--kerykeion-color-base-200);
|
|
37
|
+
--kerykeion-chart-color-zodiac-bg-3: var(--kerykeion-color-base-300);
|
|
38
|
+
--kerykeion-chart-color-zodiac-bg-4: var(--kerykeion-color-base-200);
|
|
39
|
+
--kerykeion-chart-color-zodiac-bg-5: var(--kerykeion-color-base-300);
|
|
40
|
+
--kerykeion-chart-color-zodiac-bg-6: var(--kerykeion-color-base-200);
|
|
41
|
+
--kerykeion-chart-color-zodiac-bg-7: var(--kerykeion-color-base-300);
|
|
42
|
+
--kerykeion-chart-color-zodiac-bg-8: var(--kerykeion-color-base-200);
|
|
43
|
+
--kerykeion-chart-color-zodiac-bg-9: var(--kerykeion-color-base-300);
|
|
44
|
+
--kerykeion-chart-color-zodiac-bg-10: var(--kerykeion-color-base-200);
|
|
45
|
+
--kerykeion-chart-color-zodiac-bg-11: var(--kerykeion-color-base-300);
|
|
46
|
+
|
|
47
|
+
/* Zodiac Sign Rings */
|
|
48
|
+
--kerykeion-chart-color-zodiac-radix-ring-0: var(--kerykeion-color-neutral);
|
|
49
|
+
--kerykeion-chart-color-zodiac-radix-ring-1: var(--kerykeion-color-neutral);
|
|
50
|
+
--kerykeion-chart-color-zodiac-radix-ring-2: var(--kerykeion-color-neutral);
|
|
51
|
+
--kerykeion-chart-color-zodiac-transit-ring-0: var(--kerykeion-color-neutral);
|
|
52
|
+
--kerykeion-chart-color-zodiac-transit-ring-1: var(--kerykeion-color-neutral);
|
|
53
|
+
--kerykeion-chart-color-zodiac-transit-ring-2: var(--kerykeion-color-neutral);
|
|
54
|
+
--kerykeion-chart-color-zodiac-transit-ring-3: var(--kerykeion-color-neutral);
|
|
55
|
+
--kerykeion-chart-color-houses-radix-line: var(--kerykeion-color-base-content);
|
|
56
|
+
--kerykeion-chart-color-houses-transit-line: var(--kerykeion-color-base-content);
|
|
57
|
+
|
|
58
|
+
/* Aspects */
|
|
59
|
+
--kerykeion-chart-color-conjunction: var(--kerykeion-color-success);
|
|
60
|
+
--kerykeion-chart-color-semi-sextile: var(--kerykeion-color-success);
|
|
61
|
+
--kerykeion-chart-color-semi-square: var(--kerykeion-color-error);
|
|
62
|
+
--kerykeion-chart-color-sextile: var(--kerykeion-color-success);
|
|
63
|
+
--kerykeion-chart-color-quintile: var(--kerykeion-color-secondary);
|
|
64
|
+
--kerykeion-chart-color-square: var(--kerykeion-color-error);
|
|
65
|
+
--kerykeion-chart-color-trine: var(--kerykeion-color-success);
|
|
66
|
+
--kerykeion-chart-color-sesquiquadrate: var(--kerykeion-color-error);
|
|
67
|
+
--kerykeion-chart-color-biquintile: var(--kerykeion-color-secondary);
|
|
68
|
+
--kerykeion-chart-color-quincunx: var(--kerykeion-color-secondary);
|
|
69
|
+
--kerykeion-chart-color-opposition: var(--kerykeion-color-error);
|
|
70
|
+
|
|
71
|
+
/* Planets */
|
|
72
|
+
--kerykeion-chart-color-sun: var(--kerykeion-color-warning);
|
|
73
|
+
--kerykeion-chart-color-moon: var(--kerykeion-color-secondary);
|
|
74
|
+
--kerykeion-chart-color-mercury: var(--kerykeion-color-primary);
|
|
75
|
+
--kerykeion-chart-color-venus: var(--kerykeion-color-accent);
|
|
76
|
+
--kerykeion-chart-color-mars: var(--kerykeion-color-warning);
|
|
77
|
+
--kerykeion-chart-color-jupiter: var(--kerykeion-color-primary);
|
|
78
|
+
--kerykeion-chart-color-saturn: var(--kerykeion-color-secondary);
|
|
79
|
+
--kerykeion-chart-color-uranus: var(--kerykeion-color-accent);
|
|
80
|
+
--kerykeion-chart-color-neptune: var(--kerykeion-color-primary);
|
|
81
|
+
--kerykeion-chart-color-pluto: var(--kerykeion-color-secondary);
|
|
82
|
+
--kerykeion-chart-color-mean-node: var(--kerykeion-color-warning);
|
|
83
|
+
--kerykeion-chart-color-true-node: var(--kerykeion-color-warning);
|
|
84
|
+
--kerykeion-chart-color-chiron: var(--kerykeion-color-secondary);
|
|
85
|
+
--kerykeion-chart-color-first-house: var(--kerykeion-color-warning);
|
|
86
|
+
--kerykeion-chart-color-tenth-house: var(--kerykeion-color-warning);
|
|
87
|
+
--kerykeion-chart-color-seventh-house: var(--kerykeion-color-warning);
|
|
88
|
+
--kerykeion-chart-color-fourth-house: var(--kerykeion-color-warning);
|
|
89
|
+
--kerykeion-chart-color-mean-lilith: var(--kerykeion-color-secondary);
|
|
90
|
+
|
|
91
|
+
/* Zodiac Signs */
|
|
92
|
+
--kerykeion-chart-color-zodiac-icon-0: var(--kerykeion-color-accent);
|
|
93
|
+
--kerykeion-chart-color-zodiac-icon-1: var(--kerykeion-color-warning);
|
|
94
|
+
--kerykeion-chart-color-zodiac-icon-2: var(--kerykeion-color-primary);
|
|
95
|
+
--kerykeion-chart-color-zodiac-icon-3: var(--kerykeion-color-secondary);
|
|
96
|
+
--kerykeion-chart-color-zodiac-icon-4: var(--kerykeion-color-accent);
|
|
97
|
+
--kerykeion-chart-color-zodiac-icon-5: var(--kerykeion-color-warning);
|
|
98
|
+
--kerykeion-chart-color-zodiac-icon-6: var(--kerykeion-color-primary);
|
|
99
|
+
--kerykeion-chart-color-zodiac-icon-7: var(--kerykeion-color-secondary);
|
|
100
|
+
--kerykeion-chart-color-zodiac-icon-8: var(--kerykeion-color-accent);
|
|
101
|
+
--kerykeion-chart-color-zodiac-icon-9: var(--kerykeion-color-warning);
|
|
102
|
+
--kerykeion-chart-color-zodiac-icon-10: var(--kerykeion-color-primary);
|
|
103
|
+
--kerykeion-chart-color-zodiac-icon-11: var(--kerykeion-color-secondary);
|
|
104
|
+
|
|
105
|
+
/* Elements Percentage */
|
|
106
|
+
--kerykeion-chart-color-air-percentage: var(--kerykeion-color-primary);
|
|
107
|
+
--kerykeion-chart-color-earth-percentage: var(--kerykeion-color-warning);
|
|
108
|
+
--kerykeion-chart-color-fire-percentage: var(--kerykeion-color-accent);
|
|
109
|
+
--kerykeion-chart-color-water-percentage: var(--kerykeion-color-secondary);
|
|
110
|
+
|
|
111
|
+
/* Aspects */
|
|
112
|
+
--kerykeion-chart-color-lunar-phase-0: var(--kerykeion-color-black);
|
|
113
|
+
--kerykeion-chart-color-lunar-phase-1: var(--kerykeion-color-white);
|
|
114
|
+
|
|
115
|
+
/* Houses Numbers */
|
|
116
|
+
--kerykeion-chart-color-house-number: var(--kerykeion-color-base-content);
|
|
117
|
+
}
|
kerykeion/enums.py
CHANGED
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
from kerykeion import AstrologicalSubject
|
|
2
|
+
from kerykeion.utilities import get_houses_list, get_available_planets_list
|
|
3
|
+
from kerykeion.astrological_subject import DEFAULT_HOUSES_SYSTEM_IDENTIFIER, DEFAULT_PERSPECTIVE_TYPE, DEFAULT_ZODIAC_TYPE
|
|
4
|
+
from kerykeion.kr_types import EphemerisDictModel
|
|
5
|
+
from kerykeion.kr_types import SiderealMode, HousesSystemIdentifier, PerspectiveType, ZodiacType
|
|
6
|
+
from datetime import datetime, timedelta
|
|
7
|
+
from typing import Literal, Union
|
|
8
|
+
import logging
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class EphemerisDataFactory:
|
|
12
|
+
"""
|
|
13
|
+
This class is used to generate ephemeris data for a given date range.
|
|
14
|
+
|
|
15
|
+
Parameters:
|
|
16
|
+
- start_datetime: datetime object representing the start date and time.
|
|
17
|
+
- end_datetime: datetime object representing the end date and time.
|
|
18
|
+
- step_type: string representing the step type. It can be "days", "hours", or "minutes". Default is "days".
|
|
19
|
+
- step: integer representing the step value. Default is 1.
|
|
20
|
+
- lat: float representing the latitude. Default is 51.4769 (Greenwich).
|
|
21
|
+
- lng: float representing the longitude. Default is 0.0005 (Greenwich).
|
|
22
|
+
- tz_str: string representing the timezone. Default is "Etc/UTC".
|
|
23
|
+
- is_dst: boolean representing if daylight saving time is active. Default is False.
|
|
24
|
+
- disable_chiron_and_lilith: boolean representing if Chiron and Lilith should be disabled. Default is False.
|
|
25
|
+
- zodiac_type: ZodiacType object representing the zodiac type. Default is DEFAULT_ZODIAC_TYPE.
|
|
26
|
+
- sidereal_mode: SiderealMode object representing the sidereal mode. Default is None.
|
|
27
|
+
- houses_system_identifier: HousesSystemIdentifier object representing the houses system identifier. Default is DEFAULT_HOUSES_SYSTEM_IDENTIFIER.
|
|
28
|
+
- perspective_type: PerspectiveType object representing the perspective type. Default is DEFAULT_PERSPECTIVE_TYPE.
|
|
29
|
+
- max_days: integer representing the maximum number of days.
|
|
30
|
+
Set it to None to disable the check. Default is 730.
|
|
31
|
+
- max_hours: integer representing the maximum number of hours.
|
|
32
|
+
Set it to None to disable the check. Default is 8760.
|
|
33
|
+
- max_minutes: integer representing the maximum number of minutes.
|
|
34
|
+
Set it to None to disable the check. Default is 525600.
|
|
35
|
+
|
|
36
|
+
Raises:
|
|
37
|
+
- ValueError: if the step type is invalid.
|
|
38
|
+
- ValueError: if the number of days, hours, or minutes is greater than the maximum allowed.
|
|
39
|
+
"""
|
|
40
|
+
|
|
41
|
+
def __init__(
|
|
42
|
+
self,
|
|
43
|
+
start_datetime: datetime,
|
|
44
|
+
end_datetime: datetime,
|
|
45
|
+
step_type: Literal["days", "hours", "minutes"] = "days",
|
|
46
|
+
step: int = 1,
|
|
47
|
+
lat: float = 51.4769,
|
|
48
|
+
lng: float = 0.0005,
|
|
49
|
+
tz_str: str = "Etc/UTC",
|
|
50
|
+
is_dst: bool = False,
|
|
51
|
+
disable_chiron_and_lilith: bool = False,
|
|
52
|
+
zodiac_type: ZodiacType = DEFAULT_ZODIAC_TYPE,
|
|
53
|
+
sidereal_mode: Union[SiderealMode, None] = None,
|
|
54
|
+
houses_system_identifier: HousesSystemIdentifier = DEFAULT_HOUSES_SYSTEM_IDENTIFIER,
|
|
55
|
+
perspective_type: PerspectiveType = DEFAULT_PERSPECTIVE_TYPE,
|
|
56
|
+
max_days: Union[int, None] = 730,
|
|
57
|
+
max_hours: Union[int, None] = 8760,
|
|
58
|
+
max_minutes: Union[int, None] = 525600,
|
|
59
|
+
):
|
|
60
|
+
self.start_datetime = start_datetime
|
|
61
|
+
self.end_datetime = end_datetime
|
|
62
|
+
self.step_type = step_type
|
|
63
|
+
self.step = step
|
|
64
|
+
self.lat = lat
|
|
65
|
+
self.lng = lng
|
|
66
|
+
self.tz_str = tz_str
|
|
67
|
+
self.is_dst = is_dst
|
|
68
|
+
self.disable_chiron_and_lilith = disable_chiron_and_lilith
|
|
69
|
+
self.zodiac_type = zodiac_type
|
|
70
|
+
self.sidereal_mode = sidereal_mode
|
|
71
|
+
self.houses_system_identifier = houses_system_identifier
|
|
72
|
+
self.perspective_type = perspective_type
|
|
73
|
+
self.max_days = max_days
|
|
74
|
+
self.max_hours = max_hours
|
|
75
|
+
self.max_minutes = max_minutes
|
|
76
|
+
|
|
77
|
+
self.dates_list = []
|
|
78
|
+
if self.step_type == "days":
|
|
79
|
+
self.dates_list = [self.start_datetime + timedelta(days=i) for i in range((self.end_datetime - self.start_datetime).days)]
|
|
80
|
+
if max_days and (len(self.dates_list) > max_days):
|
|
81
|
+
raise ValueError(f"Too many days: {len(self.dates_list)} > {self.max_days}. To prevent this error, set max_days to a higher value or reduce the date range.")
|
|
82
|
+
|
|
83
|
+
elif self.step_type == "hours":
|
|
84
|
+
self.dates_list = [self.start_datetime + timedelta(hours=i) for i in range((self.end_datetime - self.start_datetime).days * 24)]
|
|
85
|
+
if max_hours and (len(self.dates_list) > max_hours):
|
|
86
|
+
raise ValueError(f"Too many hours: {len(self.dates_list)} > {self.max_hours}. To prevent this error, set max_hours to a higher value or reduce the date range.")
|
|
87
|
+
|
|
88
|
+
elif self.step_type == "minutes":
|
|
89
|
+
self.dates_list = [self.start_datetime + timedelta(minutes=i) for i in range((self.end_datetime - self.start_datetime).days * 24 * 60)]
|
|
90
|
+
if max_minutes and (len(self.dates_list) > max_minutes):
|
|
91
|
+
raise ValueError(f"Too many minutes: {len(self.dates_list)} > {self.max_minutes}. To prevent this error, set max_minutes to a higher value or reduce the date range.")
|
|
92
|
+
|
|
93
|
+
else:
|
|
94
|
+
raise ValueError(f"Invalid step type: {self.step_type}")
|
|
95
|
+
|
|
96
|
+
if not self.dates_list:
|
|
97
|
+
raise ValueError("No dates found. Check the date range and step values.")
|
|
98
|
+
|
|
99
|
+
if len(self.dates_list) > 1000:
|
|
100
|
+
logging.warning(f"Large number of dates: {len(self.dates_list)}. The calculation may take a while.")
|
|
101
|
+
|
|
102
|
+
def get_ephemeris_data(self, as_model: bool = False) -> list:
|
|
103
|
+
"""
|
|
104
|
+
Generate ephemeris data for the specified date range.
|
|
105
|
+
The data is structured as a list of dictionaries, where each dictionary contains the date, planets, and houses data.
|
|
106
|
+
Example:
|
|
107
|
+
[
|
|
108
|
+
{
|
|
109
|
+
"date": "2020-01-01T00:00:00",
|
|
110
|
+
"planets": [{...}, {...}, ...],
|
|
111
|
+
"houses": [{...}, {...}, ...]
|
|
112
|
+
},
|
|
113
|
+
...
|
|
114
|
+
]
|
|
115
|
+
|
|
116
|
+
Args:
|
|
117
|
+
- as_model (bool): If True, the ephemeris data will be returned as model instances. Default is False.
|
|
118
|
+
|
|
119
|
+
Returns:
|
|
120
|
+
- list: A list of dictionaries representing the ephemeris data. If as_model is True, a list of EphemerisDictModel instances is returned.
|
|
121
|
+
"""
|
|
122
|
+
ephemeris_data_list = []
|
|
123
|
+
for date in self.dates_list:
|
|
124
|
+
subject = AstrologicalSubject(
|
|
125
|
+
year=date.year,
|
|
126
|
+
month=date.month,
|
|
127
|
+
day=date.day,
|
|
128
|
+
hour=date.hour,
|
|
129
|
+
minute=date.minute,
|
|
130
|
+
lng=self.lng,
|
|
131
|
+
lat=self.lat,
|
|
132
|
+
tz_str=self.tz_str,
|
|
133
|
+
city="Placeholder",
|
|
134
|
+
nation="Placeholder",
|
|
135
|
+
online=False,
|
|
136
|
+
disable_chiron_and_lilith=self.disable_chiron_and_lilith,
|
|
137
|
+
zodiac_type=self.zodiac_type,
|
|
138
|
+
sidereal_mode=self.sidereal_mode,
|
|
139
|
+
houses_system_identifier=self.houses_system_identifier,
|
|
140
|
+
perspective_type=self.perspective_type,
|
|
141
|
+
is_dst=self.is_dst,
|
|
142
|
+
)
|
|
143
|
+
|
|
144
|
+
houses_list = get_houses_list(subject)
|
|
145
|
+
available_planets = get_available_planets_list(subject)
|
|
146
|
+
|
|
147
|
+
ephemeris_data_list.append({"date": date.isoformat(), "planets": available_planets, "houses": houses_list})
|
|
148
|
+
|
|
149
|
+
if as_model:
|
|
150
|
+
return [EphemerisDictModel(**data) for data in ephemeris_data_list]
|
|
151
|
+
|
|
152
|
+
return ephemeris_data_list
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
if "__main__" == __name__:
|
|
156
|
+
start_date = datetime.fromisoformat("2020-01-01")
|
|
157
|
+
end_date = datetime.fromisoformat("2020-01-03")
|
|
158
|
+
|
|
159
|
+
factory = EphemerisDataFactory(
|
|
160
|
+
start_datetime=start_date,
|
|
161
|
+
end_datetime=end_date,
|
|
162
|
+
step_type="minutes",
|
|
163
|
+
step=1,
|
|
164
|
+
lat=37.9838,
|
|
165
|
+
lng=23.7275,
|
|
166
|
+
tz_str="Europe/Athens",
|
|
167
|
+
is_dst=False,
|
|
168
|
+
max_hours=None,
|
|
169
|
+
max_minutes=None,
|
|
170
|
+
max_days=None,
|
|
171
|
+
)
|
|
172
|
+
|
|
173
|
+
ephemeris_data = factory.get_ephemeris_data_as_model()
|
|
174
|
+
print(ephemeris_data[0])
|
|
175
|
+
print(len(ephemeris_data))
|
|
176
|
+
|
|
177
|
+
for ephe in ephemeris_data:
|
|
178
|
+
print(ephe.planets[0]["abs_pos"])
|
kerykeion/fetch_geonames.py
CHANGED
|
@@ -79,12 +79,11 @@ class FetchGeonames:
|
|
|
79
79
|
|
|
80
80
|
params = {
|
|
81
81
|
"q": city_name,
|
|
82
|
-
"
|
|
82
|
+
"country": country_code,
|
|
83
83
|
"username": self.username,
|
|
84
84
|
"maxRows": 1,
|
|
85
85
|
"style": "SHORT",
|
|
86
|
-
"featureClass": "A",
|
|
87
|
-
"featureClass": "P",
|
|
86
|
+
"featureClass": ["A", "P"],
|
|
88
87
|
}
|
|
89
88
|
|
|
90
89
|
prepared_request = Request("GET", self.base_url, params=params).prepare()
|