
    {h
                     J    d dl Z d dlZd dlZd dlmZ d dlZd Zd Zd Zd Z	dS )    N)BeautifulSoupc                     d}ddd}| |d}t          j                    }|                    |||          }d|j        v r|S |                                 dS )	uG   
    Se connecte à DietPro et retourne une session authentifiée.
    z2https://www.dietpro.fr/customer/account/loginPost/zMozilla/5.0z!application/x-www-form-urlencoded)
User-AgentzContent-Type)zlogin[username]zlogin[password])dataheaderscustomer/accountN)requestsSessionposturlclose)emailpassword	login_urlr   payloadsessionresponses          1/var/www/sites/NaturellementBio/boutiquenature.pylogin_to_dietpror      s}     EI#; G
 !# G
   G||IGW|EEHX\)) 	t    c                 X    d}|                      |          }|j        dk    od|j        v S )u5   
    Vérifie si la session est toujours active.
    z(https://www.dietpro.fr/customer/account/   r   )getstatus_coder   )r   test_urlr   s      r   is_session_activer       s5     :H{{8$$H3&M+=+MMr   c                 .    |                                   dS )z&
    Ferme proprement la session.
    N)r   )r   s    r   close_sessionr   (   s     MMOOOOOr   c                    g d}t          j        |          dddd}t          j        dd          }t          j        |           |                     ||          }|j        d	k    r}t          |j        d
          }|	                    dd          }|D ]N}	 t          j        |j                  }	|	                    d          dk    r|	c S :# t          j        $ r Y Kw xY wd S )N)zoMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36zuMozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36zeMozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36zMozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.0 Mobile/15E148 Safari/604.1zUtext/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8zen-US,en;q=0.5zhttps://www.google.com/)r   AcceptzAccept-LanguageReferer      )r   r   zhtml.parserscriptzapplication/ld+json)typez@typeProduct)randomchoiceuniformtimesleepr   r   r   textfind_alljsonloadsstringJSONDecodeError)
r   r   user_agentsr   	wait_timer   soupscriptsr$   ld_jsons
             r   get_ldjson_from_urlr7   /   s     K mK00i+,	 G q"%%IJy{{3{00Hs""X]M::--/D-EE 	 	F*V]33;;w''944"NNN 5'   4s   3CC#"C#)
r	   r'   r*   bs4r   r.   r   r   r   r7    r   r   <module>r:      s               2N N N      r   