a
    ܟg                     @   sb   d dl Z d dlZd dlZd dlZd dlm  mZ d dlZd dlT dd Z	dddZ
dd	d
ZdS )    N)*c                  C   s   d} t jd| ddid}t|j}|d d d }|d	 }i }|D ]\}t|d
 d d }|d
 d d }t|d
 d d }|d
 d d }	|||< |||	< qDtdd }
|
t| W d    n1 s0    Y  |S )Nz<REQUEST>
    <LOGIN authenticationkey='63ea83cd2cce48c79eaebf475818b7d0'/>
    <QUERY objecttype='FerryRoute' schemaversion='1.2'>
    <FILTER/>
    <INCLUDE>Harbor</INCLUDE>
    
    
    </QUERY>
    </REQUEST>3https://api.trafikinfo.trafikverket.se/v2/data.jsonContent-Typetext/xml)dataheadersRESPONSERESULTr   Z
FerryRouteZHarborIdName   zferries_stations.txtw)	requestspostjsonloadstextstropenwritedumps)msgresponsestationsZstationliststations_dictiZid0Zname0Zid1Zname1f r   /var/www/html/ferries.pyferries_load_stations   s     	
.r   sec                 C   sV   t d| t }i }|D ]0}|d d  | v r|}|| }|||< qt | |S )Nz	Station:    )printr   lower)operatorstationcountryr   search_listr   name	shortnamer   r   r   ferries_lookup'   s    

r*   fec                 C   s`  t j  }|d}d}t jdd}t jdd}td| || }|d}d}d| d	 | d
 }t|}	t|	d}t	j
dd|ddid}
t|
j}|d d d d }g }|D ]^}t|d d | kr|d rq|d d d }|d d }|d|dddg d}|| qtd|t| t|r\|tt d tj| | | < |S d S )!Nz%H:%M:%Sz$dateadd(00:00:00)   )hours   z) --------------------------------------- z$dateadd(03:00:00)aV  <REQUEST>
                <LOGIN authenticationkey='63ea83cd2cce48c79eaebf475818b7d0' />
                <QUERY objecttype='FerryAnnouncement' schemaversion='1.2'>
                <FILTER>
                    <AND>
                        <OR>
                            <AND>
                                <GT name='DepartureTime' value='zE' />
                                <LT name='DepartureTime' value='a  ' />
                            </AND>
                        </OR>
                        
                    </AND>
                    </FILTER>
    
               <INCLUDE>Deleted</INCLUDE>
               <INCLUDE>DepartureTime</INCLUDE>
                <INCLUDE>FromHarbor</INCLUDE>
                <INCLUDE>ToHarbor</INCLUDE>
                </QUERY>
                </REQUEST>zutf-8r   r   r   )timeoutr   r   r   r	   r   ZFerryAnnouncementZ
FromHarborr
   ZDeletedZDepartureTime   ZToHarborr   0SHIP)idtransport_mode)destinationdirection_codeexpectedline
deviationsRESULTS)
departures	timestamp)datetimenowstrftime	timedeltar"   ET
fromstringtostringdecoder   r   r   r   r   r   appendlentimemktime	localtimev	operators)r%   r$   r&   r>   now_strr-   later	later_strr   rootr   r;   resultsr   _timer5   departures_dictr   r   r   ferries_load_departures9   sP    






"rS   )r    )r+   r    )r   rG   r   r=   xml.etree.ElementTreeetreeElementTreerA   rJ   r   r*   rS   r   r   r   r   <module>   s    !
