Plaster
New
List
Login
python
default
isoraqathedh
2021.02.21 08:38:12
#!/usr/bin/env python3 import ephem import sys import asyncio import os def altitude(latitude, longitude, time): place = ephem.Observer() place.lat=str(latitude) place.lon=str(longitude) place.date=time.strftime("%Y-%m-%d %H:%M:%S") return ephem.Sun(place).alt / math.pi * 180 socket = "/tmp/sun-angle.s" async def handle_client(reader, writer): request = None while request != 'quit': request = (await reader.readline()).decode('utf8') response = altitude(*[float(i) for i in request.split(",")], None) + '\n' writer.write(response.encode('utf8')) await writer.drain() writer.close() try: loop = asyncio.get_event_loop() loop.create_task(loop.create_unix_server(asyncio.StreamProtocol, socket)) loop.run_forever() except KeyboardInterrupt: print("Exiting", file=sys.stderr)
Raw
Annotate
Repaste
Annotations
python
default
isoraqathedh
2021.02.21 08:38:59
#!/usr/bin/env python3 import asyncio socket = "/tmp/sun-angle.s" async def send_location(lat, lon): msg = "quit\n" # f"{lat},{lon}\n" reader, writer = await asyncio.open_unix_connection(socket) writer.write(msg.encode("utf-8")) await writer.drain() print((await reader.readline()).decode('utf8')) asyncio.run(send_location(1, 2))
Raw
Repaste
text
default
isoraqathedh
2021.02.21 08:42:15
917. « i3blocks/blocks/datex % python disp-s.py Traceback (most recent call last): File "/home/isoraqathedh/dotfiles/fiventsu/.config/i3blocks/blocks/datex/disp-s.py", line 14, in <module> asyncio.run(send_location(1, 2)) File "/usr/lib/python3.9/asyncio/runners.py", line 44, in run return loop.run_until_complete(main) File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete return future.result() File "/home/isoraqathedh/dotfiles/fiventsu/.config/i3blocks/blocks/datex/disp-s.py", line 12, in send_location print((await reader.readline()).decode('utf8')) File "/usr/lib/python3.9/asyncio/streams.py", line 540, in readline line = await self.readuntil(sep) File "/usr/lib/python3.9/asyncio/streams.py", line 632, in readuntil await self._wait_for_data('readuntil') File "/usr/lib/python3.9/asyncio/streams.py", line 517, in _wait_for_data await self._waiter File "/usr/lib/python3.9/asyncio/selector_events.py", line 856, in _read_ready__data_received data = self._sock.recv(self.max_size) ConnectionResetError: [Errno 104] Connection reset by peer # Meanwhile, provider also has this error: Fatal error: protocol.get_buffer() call failed. protocol: <asyncio.protocols.BufferedProtocol object at 0x7f7fc6277fe0> transport: <_SelectorSocketTransport fd=7 read=polling write=<idle, bufsize=0>> Traceback (most recent call last): File "/usr/lib/python3.9/asyncio/selector_events.py", line 821, in _read_ready__get_buffer if not len(buf): TypeError: object of type 'NoneType' has no len()
Raw
Repaste