1
+ {
2
+ "cells" : [
3
+ {
4
+ "cell_type" : " markdown" ,
5
+ "metadata" : {
6
+ "id" : " view-in-github" ,
7
+ "colab_type" : " text"
8
+ },
9
+ "source" : [
10
+ " <a href=\" https://colab.research.google.com/github/klajosw/python/blob/master/kl_py_xls_nap.ipynb\" target=\" _parent\" ><img src=\" https://colab.research.google.com/assets/colab-badge.svg\" alt=\" Open In Colab\" /></a>"
11
+ ]
12
+ },
13
+ {
14
+ "cell_type" : " markdown" ,
15
+ "id" : " 91c57de4" ,
16
+ "metadata" : {
17
+ "id" : " 91c57de4"
18
+ },
19
+ "source" : [
20
+ " ---\n " ,
21
+ " \n " ,
22
+ " # Solplanet forras feldolgozás Python alatt\n " ,
23
+ " \n " ,
24
+ " \n " ,
25
+ " ## Használt csomagok:\n " ,
26
+ " \n " ,
27
+ " \n " ,
28
+ " json, matplotlib, pandas\n " ,
29
+ " \n " ,
30
+ " \n " ,
31
+ " \n " ,
32
+ " \n " ,
33
+ " Python csomagok helye\n " ,
34
+ " https://pypi.org\n " ,
35
+ " \n " ,
36
+ " \n " ,
37
+ " ---\n "
38
+ ]
39
+ },
40
+ {
41
+ "cell_type" : " code" ,
42
+ "execution_count" : null ,
43
+ "id" : " 452b0c3b" ,
44
+ "metadata" : {
45
+ "scrolled" : false ,
46
+ "id" : " 452b0c3b"
47
+ },
48
+ "outputs" : [],
49
+ "source" : [
50
+ " import datetime\n " ,
51
+ " import pandas as pd\n " ,
52
+ " import warnings\n " ,
53
+ " import datetime as dt\n " ,
54
+ " from matplotlib import pyplot as plt\n " ,
55
+ " warnings.filterwarnings(\" ignore\" )\n " ,
56
+ " \n " ,
57
+ " plt.rcParams['figure.figsize'] = [12, 5] ## diagram megjelenítés mértezés\n " ,
58
+ " \n " ,
59
+ " kl_file =r'c:\\ Users\\ kecskemetil\\ Documents\\ sj\\ napelem\\ solplanet_napok\\ Daily Energy20230'\n " ,
60
+ " \n " ,
61
+ " \n " ,
62
+ " kl_tartalom = pd.read_excel(kl_file +'201.xls') ## 02.01. betöltés\n " ,
63
+ " ## ciklus olvasás a napokra\n " ,
64
+ " for i in range(202,217): ## 02.02-02.16. betöltés\n " ,
65
+ " kl_file2 = kl_file + '{}.xls'.format(i)\n " ,
66
+ " kl_tmp = pd.read_excel(kl_file + '{}.xls'.format(i))\n " ,
67
+ " kl_tartalom = kl_tartalom.append(kl_tmp, ignore_index = True)\n " ,
68
+ " \n " ,
69
+ " ## dátumtipusra alakítás\n " ,
70
+ " kl_tartalom[\" Time\" ] = pd.to_datetime(kl_tartalom[\" Time\" ],format= \" %Y-%m-%d %H:%M:%S\" )\n " ,
71
+ " \n " ,
72
+ " ## dátum kiválasztás (szűrés)\n " ,
73
+ " kl_tartalom.query(\" Time >= '2023-02-16 14' and Time < '2023-02-17'\" , inplace = True) ## [128 rows x 5 columns]\n " ,
74
+ " #kl_tartalom = kl_tartalom[(kl_tartalom['Time'] > \" 2023-02-16\" ) & (kl_tartalom['Time'] < \" 2023-02-17\" )] \n " ,
75
+ " #kl_tartalom = kl_tartalom[kl_tartalom['Time'].dt.strftime('%Y-%m-%d') == '2023-02-16']\n " ,
76
+ " \n " ,
77
+ " ## felesleges mezők kihagyása\n " ,
78
+ " kl_tartalom.drop(labels=['SN.','Vpv1', 'Vpv2','Ipv1','Ipv2', \n " ,
79
+ " 'Vac1', 'Vac2', 'Vac3', 'Iac1', 'Iac2', 'Iac3','Fac','Temp','E-Total', 'H-Total'], axis=1, inplace=True)\n " ,
80
+ " \n " ,
81
+ " ## idő kimetszése\n " ,
82
+ " #kl_tartalom[\" Time2\" ] = kl_tartalom[\" Time\" ].dt.time\n " ,
83
+ " #kl_tartalom[\" Time2\" ] = kl_tartalom[\" Time\" ].dt.hour\n " ,
84
+ " kl_tartalom[\" Time\" ] = kl_tartalom[\" Time\" ].dt.strftime('%H:%M')\n " ,
85
+ " \n " ,
86
+ " ## mezők kiválasztása megjelenítésnél\n " ,
87
+ " #print(kl_tartalom[['Time', 'Pac','E-Today']])\n " ,
88
+ " \n " ,
89
+ " kl_tartalom = kl_tartalom.set_index('Time')\n " ,
90
+ " \n " ,
91
+ " kl_tartalom['Pac'].plot(kind=\" bar\" )\n " ,
92
+ " plt.title(\" Napelem termelés\" )\n " ,
93
+ " plt.xlabel(\" Dátum\" )\n " ,
94
+ " plt.ylabel(\" Pac (Wh)\" )\n " ,
95
+ " \n " ,
96
+ " #kl_tartalom.plot(kind=\" bar\" )\n " ,
97
+ " print(kl_tartalom)\n " ,
98
+ " \n " ,
99
+ " kl_tartalom.to_excel(r'c:\\ Users\\ kecskemetil\\ Documents\\ sj\\ napelem\\ solplanet_napok\\ osszes_solplanet.xlsx', index=False, sheet_name='forras')\n "
100
+ ]
101
+ },
102
+ {
103
+ "cell_type" : " code" ,
104
+ "execution_count" : null ,
105
+ "id" : " 0d83f70d" ,
106
+ "metadata" : {
107
+ "id" : " 0d83f70d" ,
108
+ "outputId" : " 8f24c8ac-913a-4ed1-e017-af6f5d446747"
109
+ },
110
+ "outputs" : [
111
+ {
112
+ "name" : " stdout" ,
113
+ "output_type" : " stream" ,
114
+ "text" : [
115
+ " b'{\" flg\" :1,\" tim\" :\" 20230218151822\" ,\" tmp\" :382,\" fac\" :4999,\" pac\" :683,\" sac\" :683,\" qac\" :0,\" eto\" :4420,\" etd\" :197,\" hto\" :185,\" pf\" :83,\" wan\" :0,\" err\" :0,\" vac\" :[2351,2350,2289],\" iac\" :[11,11,11],\" vpv\" :[4755,3633],\" ipv\" :[83,76],\" str\" :[]}'\n "
116
+ ]
117
+ }
118
+ ],
119
+ "source" : [
120
+ " from urllib.request import urlopen\n " ,
121
+ " from bs4 import BeautifulSoup\n " ,
122
+ " \n " ,
123
+ " url = \" http://192.168.0.101:8484/getdevdata.cgi?device=2&sn=SP00106032280241\"\n " ,
124
+ " html = urlopen(url).read()\n " ,
125
+ " #soup = BeautifulSoup(html, features=\" html.parser\" )\n " ,
126
+ " print(html)"
127
+ ]
128
+ },
129
+ {
130
+ "cell_type" : " code" ,
131
+ "execution_count" : null ,
132
+ "id" : " 992f2b7c" ,
133
+ "metadata" : {
134
+ "id" : " 992f2b7c" ,
135
+ "outputId" : " 13c74050-df3a-4839-cc4c-f414a0915a2f"
136
+ },
137
+ "outputs" : [
138
+ {
139
+ "name" : " stdout" ,
140
+ "output_type" : " stream" ,
141
+ "text" : [
142
+ " A mai (2023.02.18) termelés: 20.2 KWh \n " ,
143
+ " és a pillanatnyi (16:01:32 -kor) termelés: 533 Wh\n " ,
144
+ " \n " ,
145
+ " ------------------------------------------------------------\n " ,
146
+ " flg 1\n " ,
147
+ " tim 20230218160132\n " ,
148
+ " tmp 372\n " ,
149
+ " fac 5005\n " ,
150
+ " pac 533\n " ,
151
+ " sac 533\n " ,
152
+ " qac 0\n " ,
153
+ " eto 4425\n " ,
154
+ " etd 202\n " ,
155
+ " hto 186\n " ,
156
+ " pf 77\n " ,
157
+ " wan 0\n " ,
158
+ " err 0\n " ,
159
+ " vac [2352, 2313, 2270]\n " ,
160
+ " iac [9, 9, 10]\n " ,
161
+ " vpv [4621, 3642]\n " ,
162
+ " ipv [67, 59]\n " ,
163
+ " str []\n "
164
+ ]
165
+ }
166
+ ],
167
+ "source" : [
168
+ " import urllib.request, json \n " ,
169
+ " ## beolvasás\n " ,
170
+ " with urllib.request.urlopen(\" http://192.168.0.101:8484/getdevdata.cgi?device=2&sn=SP00106032280241\" ) as url:\n " ,
171
+ " data = json.load(url)\n " ,
172
+ " \n " ,
173
+ " \n " ,
174
+ " ## állományba írás\n " ,
175
+ " with open(r\" c:\\ Users\\ User\\ Documents\\ kl\\ napelem\\ kl_blog\\ java\\ kl_kesz_py_2023-02-18.json\" , \" w\" ) as outfile:\n " ,
176
+ " json.dump(data, outfile)\n " ,
177
+ " \n " ,
178
+ " ## formázott megjelenítés\n " ,
179
+ " print(f\"\"\" A mai ({data['tim'][0:4]}.{data['tim'][4:6]}.{data['tim'][6:8]}) termelés: {data['etd']/10:04.1f} KWh \n " ,
180
+ " és a pillanatnyi ({data['tim'][8:10]}:{data['tim'][10:12]}:{data['tim'][12:14]} -kor) termelés: {data['pac']} Wh\n " ,
181
+ " \"\"\" )\n " ,
182
+ " \n " ,
183
+ " ## csoportos megjelenítés\n " ,
184
+ " print('-'*60)\n " ,
185
+ " for key, value in data.items():\n " ,
186
+ " print(key, value)"
187
+ ]
188
+ },
189
+ {
190
+ "cell_type" : " code" ,
191
+ "execution_count" : null ,
192
+ "id" : " 8b173d5f" ,
193
+ "metadata" : {
194
+ "id" : " 8b173d5f"
195
+ },
196
+ "outputs" : [],
197
+ "source" : []
198
+ }
199
+ ],
200
+ "metadata" : {
201
+ "kernelspec" : {
202
+ "display_name" : " Python 3" ,
203
+ "language" : " python" ,
204
+ "name" : " python3"
205
+ },
206
+ "language_info" : {
207
+ "codemirror_mode" : {
208
+ "name" : " ipython" ,
209
+ "version" : 3
210
+ },
211
+ "file_extension" : " .py" ,
212
+ "mimetype" : " text/x-python" ,
213
+ "name" : " python" ,
214
+ "nbconvert_exporter" : " python" ,
215
+ "pygments_lexer" : " ipython3" ,
216
+ "version" : " 3.8.8"
217
+ },
218
+ "colab" : {
219
+ "provenance" : [],
220
+ "include_colab_link" : true
221
+ }
222
+ },
223
+ "nbformat" : 4 ,
224
+ "nbformat_minor" : 5
225
+ }
0 commit comments