
    	IhI                         d dl mZ d dlmZ d dl d dlmZ d dlmZmZm	Z	 d dl
mZ d dlZd dlZd dlZd dlZd dlZd Zd	 Zd
 Zd Zy)    )render)settings)*)Account)datedatetime	timedelta)user_timezoneNc                 n    | dk7  r0t         j                  j                  |       j                         }|S y)N   
fb_user_idT)clientTrackerobjectsfilterexists)user_idtrackerCounts     !/var/www/html/api/serp/tracker.pyuserTrackerExistr      s4    !|$,,33w3GNNP    c                 l   	 d }|r| rt         j                  j                  |      j                         }|r<t         j                  j                  |      j	                         }|r|j
                  }|d k(  rt        |      dk7  rd }| j                  j                  d      }|r|j                  d      d   }n| j                  j                  d      }|rE| j                  d   }t               }||_
        ||_        ||_        d|_        |j                          y	# t        $ r
}	Y d }	~	y	d }	~	ww xY w)
Nr   r   HTTP_X_FORWARDED_FOR,r   REMOTE_ADDRHTTP_USER_AGENTSTARTT)r   r   r   r   first	client_ipintMETAgetsplitr   client_agentstatussave	Exception)
requestr   iptrackerExiststrackerDataclientIpx_forwarded_forreqAgent
trackerInses
             r   userTrackerRequestr1      s   w)1188G8LSSUM+33::g:NTTV$..BTzc'la/"),,"2"23I"J".44S9!<H&||//>H&||,=>H!.J,3J)+3J(.6J+(/J%OO%
   s   DD   	D3.D3c                  X    g d} t        j                  dt        |       dz
        }| |   S )N)
zNMozilla/5.0 (Windows NT 10.0; Win64; x64; rv:81.0) Gecko/20100101 Firefox/81.0zLMozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0zEMozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like GeckozuMozilla/5.0 (Macintosh; Intel Mac OS X 10_15) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.2 Safari/605.1.15zhMozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.75 Safari/537.36ziMozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36zhMozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36zhMozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36ziMozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36ziMozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.128 Safari/537.36r   r   )randomrandintlen)agentHeadersList	listIndexs     r   
fetchAgentr8   6   s2     q#&6"7!";<II&&r   c                     	 t         j                  j                  d      j                         } | r@t	        | d      rt         j                  j                  | j
                        j                  dt        j                                ddd	d
d
t               d}dt        | j                        z   dz   }t        j                  ||      }t	        |d      r|j                  dk(  r|j                         }|rut         j                  j                  | j
                        j                  d|d   |d   |d   |d   |d   |d   |t        j                         	       t!        j"                  | j$                  |d          yt         j                  j                  | j
                        j                  dt        j                                	 yt         j                  j                  | j
                        j                  dt        j                                	 yt         j                  j                  | j
                        j                  dt        j                                y# t&        $ r
}Y d }~yd }~ww xY w)Nr   )r%   r   )idBUSY)r%   modified_dateztext/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/gif,image/png,image/webp,image/jpeg,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9gzipzen-GB;q=0.9,en;q=0.81)AcceptzAccept-EncodingzAccept-LanguageDntzUpgrade-Insecure-Requestsz
User-Agentzhttp://ip-api.com/json/z?fields=66842623&lang=en)headersstatus_code   DONEtimezonecountryCodecountryregioncitymobile)	r%   	time_zonecountry_coderG   rH   rI   rJ   
other_infor<   TFAILERROR500)r   r   r   r   hasattrr:   updater   nowr8   strr   requestsr"   rB   jsonuTZTimeZoneUpdater   r'   )trackerStartDatarA   URLresp	ipResultsr0   s         r   automateRequestCallr]   H   s   (0077w7GMMO'5%%,,0@0C0C,DKKSYiqiuiuiwKx &N  ci  ~T  ]`  B  R\  R^  _ 0#6F6P6P2QQTnn||C94/''3.$(IIK	$)1188<L<O<O8PWW_eqz  |F  rG  V_  `m  Vn  xA  BK  xL  U^  _g  Uh  ox  y  o@  IR  S[  I\  ir  BJ  BN  BN  BPW  Q../?/J/JIV`Lab#'%--448H8K8K4LSS[aqyq}q}qS  A  "))004D4G4G0HOOW^nvnznzn|O}  %%,,0@0C0C,DKKSXhphththvKw
   s'   FI4 AI4 AI4 &AI4 4	JJ)django.shortcutsr   django.confr   serp.modelsaccount.modelsr   r   r   r	   serpr
   rW   sysosr3   timerU   r   r1   r8   r]    r   r   <module>rg      s8    #    " . . %    F'$r   