
    vSfG                         d dl Zd dlZd dlZd dlZd dl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d Zd Zd Zd	 Zd
 Zy)    Nc	                    t         j                  j                  t        |            5 }	g }
|D ]0  }|
j	                  |	j                  t        | ||||||||
             2 t         j                  j                  |
      D ]B  }|j                          	 |t        |j                  d            z  }	 |j                          D 	 d d d        |S # t        $ r t        d       Y |j                          vt        $ r.}t        t        |             Y d }~|j                          d }~ww xY w# |j                          w xY w# 1 sw Y   |S xY w)Nmax_workers)	result_jsonindividual_skininspect_link_listbulk_response
ReqManagersteamidqueryidfound_skinslock
   timeoutTimed out, continue)
concurrentfuturesThreadPoolExecutorlenappendsubmitcheckFiltersPremiumas_completedacquireintresultTimeoutErrorprintrelease	Exceptionstr)r   individual_skins_setr   r	   r
   r   r   r   r   executorr   r   futurees                 4/var/www/cs2snipeproduction/MarketBot/FilterSkins.pyThreadedCheckFiltersPremiumr(      sA    
			.	.3?S;T	.	U  Ya3 	ONN' +$3&7"/)## +   	  !((55g> 	FLLNs6===#<== 	% B    +,   c!f
 A B sZ   A*EC4ED-%D0&E7D-?D(D0E(D--D00EEEc	                 :   g }	t        || d   ||      }
t        t        | d               D ]3  }t        ||||      }|t	        |      dkD  s#|	j                  |       5 |	D ]}  }|D ]t  }t        |      j                  d      d   j                  d      d   j                  d      d   }d }d }|D ],  }t        |d         t        |      k(  s|d   }d	| v s(|d	   }. ||   }t        | |t        |         |
      }d}d| v rVt	        |t        |         d         dkD  r9|t        |         d   D ]  }	 |t        |d         dz   z  } t        |      d d }|du s|t        |      t        | d         k  st        j                  |t        |         d   |t        |         d   |t        |         d   ||||||||        |5  |dz  }d d d        w  |S # t        $ r}t        t        |             Y d }~d }~ww xY w# 1 sw Y   xY w)Npagesr   z%20M   ADlinkpagepricer   iteminfor0    stickerpanelstickersname, Tcsfloat_rankfull_item_name
floatvalue	paintseed)checkPremiumRankranger   getPremiumRanksr   r   r"   splitcheckFiltersr!   r   DBStuffhandleDBInsert)r   r   r   r	   r
   r   r   r   r   all_premium_ranks_listcheckedr/   premium_ranksinspect_linkskinr0   irankall_filters_matchstickertextstickerr&   s                         r'   r   r   :   s     G0DgwWG c+g./0 ='wP$=!A%&--m<	= 0 +%) *	%L|$**6215;;C@CII#NqQDED& +qy>S%66V9D+- !'
	+ !.D ,'&s4y1! K,}SY/
;<q@#0T#;J#G %%'3wv+?$+FFK% #&k"23B"7K D(T-=#d)sS^_mSnOoBo&&!#d),-=>!#d),\:!#d),[9   %1$K% %S*	%+%X )  ) %!#a&M$%$% %s$   :G&H&	H	/H	H	Hc	                 .   d|t        |         v sd|v ryd}	t        j                  |t        |         d   |t        |         d   |t        |         d   |t        |         d         }
d| v r#t        j                  ||t        |               }nd }	 t        j                  ||t        |               }t        | |t        |         |      }d	}d
| v rVt        |t        |         d         dkD  r9|t        |         d   D ]  }	 |t        |d         dz   z  } t        |      d d }d }d| v r| d   dk(  r|t        |t        |         |      }|du r`|^t        j                  |t        |         d   |t        |         d   |t        |         d   |
||||||        |5  |	dz  }	d d d        |	S |	S |du rgt        j                  |t        |         d   |t        |         d   |t        |         d   t        |
      ||d |||        |5  |	dz  }	d d d        |	S |	S # t
        $ r}t        t        |             Y d }~d }~ww xY w# t
        $ r}t        t        |             Y d }~od }~ww xY w# 1 sw Y   |	S xY w# 1 sw Y   |	S xY w)Nerrorr   msadr0   r1   r3   r4   r5   r6   r7   r8   maxfloatranktop5Tr:   r;   r<   r+   )r"   HelperFunctionsgenerateInspectLinkgetPricegetPager!   r   rA   r   checkDBForRankrB   rC   )r   r   r	   rH   r
   r   r   connr   r   generated_inspect_linkr0   r/   r&   rK   rL   rM   rJ   s                     r'   threadedFilterSkinsr]      s     -D	**g.FK,@@c$i %c$i %c$i %c$i %	 +(():M#d)<TU&&'8-D	:RS %s4y) K$}SY'
34q8(T3J? 3wv#7$#>>K k*3B/K D$~&&0!-D	":DAD D(T-=&&!#d),-=>!#d),\:!#d),[9*  %1$K%& ;! $""c$i()9:c$i(6c$i(5*+  !q !;u  c!f ! #a&M0%& !sH   "H' 
I(I=J
'	I0I

I	I:I55I:=J
Jc                 :   t        j                         }t        j                  ddddd      }t	        j
                  |      }d}	d}
d| v rd	| d   v r| d
   dk(  rt               }i }d}|D ]|  }|dz  }|dkD  rd}		 |j                  |dz   |      j                         }|D ]E  }|t        |         |t        |      <   |j                  t        |t        |         d                G ~ |
t        | |||||||
|	      z  }
|
S d}|	s|D ]  }i }d}|dz  }|dkD  rd}		 |j                  |dz   |      j                         }t         j"                  j%                  d      5 }g }|D ]0  }|j'                  |j)                  t*        | ||||||||
             2 	 d d d        t         j"                  j-                        D ]B  }|j/                          	 |
t1        |j3                  d            z  }
	 |j7                          D t        d       
 d}	|
S # t        $ r4}t        t        |             t        j                  d       Y d }~d }~ww xY w# t        $ r4}t        t        |             t        j                  d       Y d }~d }~ww xY w# 1 sw Y   xY w# t4        $ r t        d       Y |j7                          t        $ r/}t        t        |             Y d }~|j7                          ?d }~ww xY w# |j7                          w xY w)NpostgreszBerufsorientierung1!23.88.122.575432)databaseuserpasswordhostportFr   more_filtersrJ   rT   r9   r+   r   Tbulkr:      r   )	r   r   r	   rH   r
   r   r   r[   r   r   r   zThreadpool Done)	threadingLockpsycopg2connectrV   
bulkActionsetpostRequestNakedjsonr!   r   r"   timesleepaddr(   r   r   r   r   r   r]   r   r   r   r   r   r    )r   r   inspect_server_urlr
   r   r   r   r[   bulk_inspect_link_listsendr   r#   premium_bulk_responserepeat_counter	bulk_listr	   r&   rH   real_bulk_response	real_flagr$   r   r%   s                          r'   filterSkinsr}      sq    >>D'D .889JK
CK $[00>*n<'*u$(*%!"!8 fI&!+)B."&C%,6,G,G 2V ;Y-"df * %2 fD?LSQUY?W1#d)<044Ss4y9QRb9c5deff  :;H\^o  rG  IS  U\  ^e  gr  tx   y  y"" N0 <	%I!#IaN" * ; ;&/!$& ( ##6626F () DNN /(3.?*7!%'1$+$+!%!% ( $ %,,99'B ##3v}}R}'@#AAK LLN# #$y<	%z ]  ) %!#a&M JJqM$%0  c!f

1" . $ /0 LLN ! #a&MLLN
 LLNsr   ;#H#I!8JJ'	I#)II	J#)JJJ$	'L;LLL *L LLLc                 N   |j                         }|j                  dt        | d         f       |j                         }|j                  dt        | d         f       |j                         }t	        |      dk(  rt	        |      dk(  ry |D ]@  }t        | d         t        |d         kD  s!t        dt        | d         z          |d   c S  |D ]@  }t        | d         t        |d         k  s!t        dt        | d         z          |d   c S  |j                          y )	NzCSELECT float, rank FROM full_floats_low WHERE market_hash_name = %sr:   zDSELECT float, rank FROM full_floats_high WHERE market_hash_name = %sr   r;   z"ACTUAL TOP 5 HIGHFLOAT FOUND FOR: r+   z!ACTUAL TOP 5 LOWFLOAT FOUND FOR: )cursorexecuter"   fetchallr   floatr   close)r2   r[   r   top5_low	top5_hightopfloats         r'   rZ   rZ   G  s1   [[]F
NNM	X&'	(*  H
NNN	X&'	(* !I
8}c)n1 ,'(5!+==4s8DT;U7VV A;  ,'(5!+==5HEU<V8WWXA; LLN    c           
          t        j                  dd      rOt        j                  dd      r9t        j                  dd| t	        |      t	        |      t	        |      gd       y y )Nr`   iU  i&  python3zmain.pyz/var/www/premiumrankchecker)cwd)rV   isOpen
subprocessrunr"   )r:   r*   r   r   s       r'   r=   r=   f  sW    nd38N8N~_c8d	9nc%j#g,X[\cXde  lI  	Jr   c                    i }t        dt        |      z   dz   t        |      z   dz   t        j                  j	                  t        |             z   dz   t        |      z   dz   d      }|j                         }	 |d   j                  d      }|D ]8  }|j                  d      d   }	|j                  d      d	   }
|
|t        |	      <   : |S # t        $ r
}Y d }~y d }~ww xY w)
Nz&/var/www/premiumrankchecker/rank_txts/_z.txtrr   z],'r+      )openr"   urllibparsequote	readlinesr@   r!   )r:   r/   r   r   csfloat_ranksresults_listlinesr   resrG   rJ   r&   s               r'   r?   r?   l  s%   M@3w<ORUUX[\cXddgjjmsmymymm  AD  ES  AT  nU  U  X[  [  ^a  bf  ^g  g  jp  p  ru  vL""$E	q% 	4C99S>!,L99S>!$D/3M#l+,	4
  s   9AC 	CCc                 L   t        j                  |d   |d   |d   |d         }dt        |      z   }d}|s;|j                  |      }|d d gS 	 |j	                         }d}d d gS d|v rd d gS |s;d	v r|d	   d
   dk7  r6|d	   d
   .t        |d	   d
         }	|	dk  rd d gS t        |	      }	|	dk  rd |	gS |d	   d   dk7  r6|d	   d   .t        |d	   d         }
|
dk  rd d gS t        |
      }
|
dk  rd |
gS d d gS # t
        $ r}t        t        |             Y d }~d }~ww xY w)NrP   rQ   rR   rS   z-https://floats.steaminventoryhelper.com/?url=FTrO   r2   globalRatingPosnullr      localRatingPos)	rV   rW   r"   getIPRoyalRequestrq   r!   r   r   r   )r   r2   r
   rG   full_urlrw   responseresponse_jsonr&   global_rank
local_ranks              r'   checkForLowFloatSIHRankr     s   "66x}hsmXc]L ?\ARRH
C//9$<	$MMOM  $<m#$<  ]"*%&78FBj)*;<Hj 9:K LMKQd|#
 "+.!# +.. *%&676Aj)*:;G}Z89IJKJA~ d|# _
? *--$<O  	#a&MM	s   C< <	D#DD#c                 H   i }| d   dk(  rd|d<   t        t        | d               t        t        |d               k(  r#t        | d         t        |d         k(  r6d|d<   n0t        t        |d         d d       }t        | d         |k(  rd|d<   | d   dk(  r| d   dk(  r3d|d<   t        |d         j                  t        | d	               rd|d<   | d   d
k(  r'd|d
<   t        | d	         t        |d         k  rd|d
<   | d   dk(  r'd|d<   t        | d	         t        |d         kD  rd|d<   d| v r'd|d<   t	        | d         t	        |d         k(  rd|d<   d| v r$d|d<   t        |      t        | d         k  rd|d<   d| v rd|d<   | d   }g }|d   }g }|D ]  }	|j                  t        |	d                ! |D ]  }	|j                  t        |	d                ! d}
|D ]  }|D ]  }||k(  s	|
dz  }
  t        |      |
k(  rd|d<   |D ]  }||   du s y y)Nfilter_optionsexact_floatFr;   Tfloat_restrictionsstarts_withfloat_for_restriction	is_bigger
is_smallerpatternr<   r0   r4   r5   rM   r6   r   r+   )r   r"   r   
startswithr   r   )r   r2   r0   filters_dictcut_iteminfo_floatstickerlist_wantedstickerlist_wanted_names_onlystickerlist_receivedstickerlist_received_names_onlyrM   matching_sticker_countwanted_stickercurrent_stickerfs                 r'   rA   rA     s   L#$5&+]#s;}-./3s8L;Q7R3SS[/0E(<:P4QQ.2]+!&s8L+A'B3B'G!H [/04FF.2]+#$(<<+,=*/L'8L)*55K 789 /3]++,;(-L%[!89:U&>  -1[)+,<).L&[!89:U&>  .2\*K"'Y{9%&#h{.C*DD&*L#+ %W<5W!566$(L!$#(Z (8(*%'
3*,') 	JG)00WY5G1HI	J , 	IG+223wv3GH	I "#; 	0N#B 0!_4*a/*0	0
 ,-1GG'+L$ ?e# r   )concurrent.futuresr   rV   rj   rr   rl   socketr   urllib.parser   rB   osr(   r   r]   r}   rZ   r=   r?   r   rA    r   r'   <module>r      sY             	+ZAJUpm`>&4nJr   