
    8si                     `    d dl Z d dl T d dlZd dlZd dlZd dlZd dlmZ d dlZd dlZd ZddZ	dS )	    N)*)gtfs_realtime_pb2c                    d}t          j        t                    }t          dd          5 }|                    |j                   d d d            n# 1 swxY w Y   i }t          j        d          5 }|                    d          5 }t          j	        |
                                                    d                                                    }|D ]=}|d         }	|                                |	                                v r|d         ||	<   >	 d d d            n# 1 swxY w Y   d d d            n# 1 swxY w Y   |S )N https://go.gv.at/ogdwienwlstatic
static.zipwb	stops.txtutf-8	stop_namestop_id)requestsgeturlopenwritecontentzipfileZipFilecsv
DictReaderreaddecode
splitlineslower)
operatorstation
static_urlrfstopszreaderrownames
             Vc:\Users\computer\Desktop\notes\tskylt4.0\server\20260128 - new GTFS loader\austria.py	wl_lookupr&      s   3JSA	lD	!	! Q		               E		&	& 1!VVK   	1A^AFFHHOOG$<$<$G$G$I$IJJF 1 1;'==??djjll22"%i.E$K1	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	1 	11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 LsH   AAA4D:
BD#D:#D'	'D:*D'	+D::D>D>wlatc                    d}t          j        |          }t          dd          5 }|                    |j                   d d d            n# 1 swxY w Y   i }g }i }i }	t          j        d          5 }
|
                    d          5 }t          j        |	                                
                    d                                                    }|D ]}|||d         <   	 d d d            n# 1 swxY w Y   |
                    d          5 }t          j        |	                                
                    d                                                    }|D ]#}|d         | k    r|                    |           $	 d d d            n# 1 swxY w Y   |
                    d          5 }t          j        |	                                
                    d                                                    }|D ]}|||d	         <   	 d d d            n# 1 swxY w Y   |
                    d
          5 }t          j        |	                                
                    d                                                    }|D ]}||	|d         <   	 d d d            n# 1 swxY w Y   d d d            n# 1 swxY w Y   t          j                    }d}|                    t          j        |          j                   g }|D ]c}|d	         }|d         }d }|j        D ]}|                    d          s|j        j        j        |k    r.|j        j        D ]P}|j        | k    rC|                    d          r|j        j        }/|                    d          r|j        j        }Q|r5t4          j                            |          }|                    d          }n8t4          j                                                            d          }| d| }||         }|	|d                  }|d         }|d         }|d|||d         dg d}|                    |           e|S )Nr   r   r   r	   r
   r   zstop_times.txtz	trips.txttrip_idz
routes.txtroute_idz&https://go.gv.at/ogdwienwlrttripupdatearrival_timetrip_update	departurearrivalz%Y%m%dT%H:%M:%Sz%Y%m%dTroute_short_nametrip_headsign0
route_type)idtransport_mode)destinationdirection_codeexpectedline
deviations)r   r   r   r   r   r   r   r   r   r   r   r   appendr   FeedMessageParseFromStringentityHasFieldr-   tripr*   stop_time_updater   r.   timer/   datetimefromtimestampstrftimedatetoday)r   r   countryr   r   r   r    
stop_timestripsroutesr!   r"   r#   feedrt_urlresultsstr*   r/   rt_timer?   studtwhenrH   rA   router:   r$   
new_records                                 r%   wl_load_departuresrW      s   3JZ  A	lD	!	! Q		               EJEF		&	& .!VVK   	,A^AFFHHOOG$<$<$G$G$I$IJJF , ,(+c)n%%,	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, VV$%% 	+^AFFHHOOG$<$<$G$G$I$IJJF + +y>W,,%%c***+	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ VVK   	,A^AFFHHOOG$<$<$G$G$I$IJJF , ,(+c)n%%,	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, VVL!! 	.Q^AFFHHOOG$<$<$G$G$I$IJJF . .*-s:''.	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	. 	.+. . . . . . . . . . . . . . .6 (**D5Ff--5666G -# -#Y-^$ k 	3 	3F??=11 !&.'99): 3 3;'))||K00 3"%-"4i00 3"%+"23  	("0099B;;011DD M''))228<<E''g''DW~tJ'('(O$  !"'"5  	
 	

 	z""""Ns   AAA5J<AC4(J<4C8	8J<;C8	<J<A2FJ<F	J<F	J<3AHJ<H 	 J<#H 	$J<<AJ%J<%J)	)J<,J)	-J<<K K )r'   r(   )
vrD   r   r   r   google.transitr   jsonr&   rW        r%   <module>r]      s        



  , , , , , ,    &] ] ] ] ] ]r\   