Ë
    ˆjz2  ã                   ór  — d 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dddd	d
ddœZdZdZej                  j                  dd«      Zej                  j                  dd«      ZddddœZ G d„ dej&                  j(                  «      Zd„ Zd„ Zd#d„Zd„ Zd„ Zd„ Zd„ Zd$d „Zd!„ Zed"k(  r e«        yy)%uy  
ä¸‰é—¨å³¡å¸‚ç”Ÿæ€�çŽ¯å¢ƒå±€ - åŒºåŽ¿åˆ†å±€æ �ç›®çˆ¬è™«
https://sthj.smx.gov.cn/{col}/0000/zhengfuxinxi-1.html
CMS: è‡ªå®šä¹‰ (siteview æ¨¡æ�¿)
åˆ—è¡¨: zhengfuxinxi-N.html, 15æ�¡/é¡µ
è¯¦æƒ…: div.articleTitle (æ ‡é¢˜) / div.publicDate (æ—¥æœŸ) / div.articleDetails (æ­£æ–‡HTML)

æ³¨æ„�: ç«™ç‚¹ DNS è§£æž�åˆ° IPv6 ä¸�å�¯è¾¾å¯¼è‡´è¿žæŽ¥è¶…æ—¶, éœ€å›ºå®š IPv4 ç›´è¿ž (111.6.94.72)
é    Nzhttp://sthj.smx.gov.cnz111.6.94.72u   ä¸‰é—¨å³¡å¸‚-é™•å·žåŒºu   ä¸‰é—¨å³¡å¸‚-ä¹‰é©¬å¸‚u   ä¸‰é—¨å³¡å¸‚-ç�µå®�å¸‚u   ä¸‰é—¨å³¡å¸‚-æ¹–æ»¨åŒºu   ä¸‰é—¨å³¡å¸‚-ç¤ºèŒƒåŒºu   ä¸‰é—¨å³¡å¸‚-å�¢æ°�åŽ¿u   ä¸‰é—¨å³¡å¸‚-æ¸‘æ± åŽ¿)Ú25012Ú25006Ú25021Ú25018Ú25015Ú25024Ú25009u	   ä¸‰é—¨å³¡zcrawl_smx_district.pyÚ	SEARCH_DBz/mnt/data/search.dbÚ
JSONL_PATHÚ zkMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0 Safari/537.36z?text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8zzh-CN,zh;q=0.9)z
User-AgentÚAcceptzAccept-Languagec                   ó"   ‡ — e Zd ZdZˆ fd„Zˆ xZS )ÚFixedIPAdapteruF   å°† sthj.smx.gov.cn å›ºå®šè§£æž�åˆ°å�¯è¾¾ IPv4, é�¿å…� DNS IPv6 è¶…æ—¶c                 óÌ   •— |j                   j                  d«      r9|j                   j                  ddt        › d�d«      |_         d|j                  d<   t        ‰| �  |fi |¤ŽS )Nzhttp://sthj.smx.gov.cn/úhttp://ú/é   zsthj.smx.gov.cnÚHost)ÚurlÚ
startswithÚreplaceÚFIXED_IPÚheadersÚsuperÚsend)ÚselfÚrequestÚkwargsÚ	__class__s      €ú'/root/gov_crawler/crawl_smx_district.pyr   zFixedIPAdapter.send/   s`   ø€ Ø�;‰;×!Ñ!Ð";Ô<Ø!Ÿ+™+×-Ñ-Ð.GÈ7ÔS[ÐR\Ð\]ÐI^Ð`aÓbˆGŒKØ&7ˆG�O‰O˜FÑ#Ü‰w‰|˜GÑ. vÑ.Ð.ó    )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Ú__classcell__)r   s   @r    r   r   ,   s   ø„ ÙP÷/ð /r!   r   c                  ó    — t        j                  «       } | j                  j                  t        «       | j                  dt        «       «       | S )Nr   )ÚrequestsÚSessionr   ÚupdateÚHEADERSÚmountr   )Úss    r    Úmake_sessionr.   6   s8   € Ü×ÑÓ€AØ‡I�I×Ñ”WÔØ‡G�GˆI”~Ó'Ô(Ø€Hr!   c                 óš   — | sy| j                  dd«      j                  dd«      } t        j                  dd| «      } | j                  «       S )Nr   u   â€‹u   ï»¿ú\s+ú )r   ÚreÚsubÚstrip)Úts    r    Úclean_titler6   =   sC   € ÙØØ	�	‰	�(˜BÓ×'Ñ'¨°"Ó5€AÜ
�‰ˆv�s˜AÓ€AØ�7‰7‹9Ðr!   c                 ój   — | j                  ||¬«      }|j                  xs d|_        |j                  S )N©Útimeoutúutf-8)ÚgetÚapparent_encodingÚencodingÚtext)Úsessionr   r9   Úrs       r    ÚfetchrA   E   s/   € Ø�‰�C ˆÓ)€AØ×$Ñ$Ò/¨€A„JØ�6‰6€Mr!   c                 ó€  — g }t        j                  d|z   dz   | t         j                  t         j                  z  «      D ]ü  }|j	                  d«      }|j	                  d«      }t        j
                  dd|«      }t        |«      }|rt        |«      dk  rŒX|dv sd	|v sd
|v rŒe|j                  d«      s$t        j                  j                  t        |«      }| |j                  «       |j                  «       dz    }t        j                  d|«      }|r|j	                  d«      nd}	|j                  |||	f«       Œþ |S )u0   è§£æž�åˆ—è¡¨é¡µ, è¿”å›ž [(abs_url, title, date)]z<a[^>]*href="([^"]*?/z/[^"]+\.html)"[^>]*>(.*?)</a>r   é   ú<[^>]+>r   é   )u   é¦–é¡µu	   ä¸Šä¸€é¡µu	   ä¸‹ä¸€é¡µu   å°¾é¡µu	   æ— éšœç¢�u   é€‚è€�ÚhttpéÈ   ú(\d{4}-\d{2}-\d{2})r   )r2   ÚfinditerÚSÚIÚgroupr3   r6   Úlenr   ÚurllibÚparseÚurljoinÚ	SITE_BASEÚendÚsearchÚappend)
ÚhtmlÚcolÚitemsÚmÚhrefÚinnerÚtxtÚctxÚdmÚdates
             r    Ú
parse_listr_   K   s  € à€Eä�[‰[Ø  3Ñ&Ð)IÑIØŒb�d‰d”R—T‘T‰kóò (ˆð �w‰w�q‹zˆØ—‘˜“
ˆÜ�f‰f�Z  UÓ+ˆÜ˜#ÓˆÙ”c˜#“h ’lØàÐ@Ñ@ÀKÐSVÑDVÐZbÐfiÑZiØØ�‰˜vÔ&Ü—<‘<×'Ñ'¬	°4Ó8ˆDà�1—5‘5“7˜1Ÿ5™5›7 S™=Ð)ˆÜ�Y‰YÐ-¨sÓ3ˆÙ ˆr�x‰x˜Œ{ bˆØ�‰�d˜C Ð&Õ'ð'(ð( €Lr!   c           	      ó4  — d}d}d}t        j                  d| t         j                  t         j                  z  «      }|r/t	        t        j
                  dd|j                  d«      «      «      }|sAt        j                  d| t         j                  «      }|rt	        |j                  d«      «      }t        j                  d| t         j                  t         j                  z  «      }|r8t        j                  d|j                  d«      «      }|r|j                  d«      }|s)t        j                  d| «      }|r|j                  d«      }t        j                  d	| t         j                  t         j                  z  «      }|r|j                  d«      }|||fS )
u)   è§£æž�è¯¦æƒ…é¡µ: æ ‡é¢˜/æ—¥æœŸ/æ­£æ–‡HTMLr   z.<div[^>]*class="articleTitle"[^>]*>(.*?)</div>rD   r   z/<meta\s+name="ArticleTitle"\s+content="([^"]*)"z,<div[^>]*class="publicDate"[^>]*>(.*?)</div>rH   r   z0<div[^>]*class="articleDetails"[^>]*>(.*?)</div>)r2   rS   rJ   rK   r6   r3   rL   )rU   Úpage_urlÚtitler^   Úcontent_htmlrX   r]   s          r    Úparse_detailrd   f   s8  € à€EØ€DØ€Lä
�	‰	ÐCÀTÌ2Ï4É4ÔRT×RVÑRVÉ;ÓW€AÙÜœBŸF™F :¨r°1·7±7¸1³:Ó>Ó?ˆÙÜ�I‰IÐHÈ$ÔPR×PTÑPTÓUˆÙÜ §¡¨£
Ó+ˆEä
�	‰	ÐAÀ4ÌÏÉÔPR×PTÑPTÉÓU€AÙÜ�Y‰YÐ-¨q¯w©w°q«zÓ:ˆÙØ—8‘8˜A“;ˆDÙÜ�I‰IÐ,¨dÓ3ˆÙØ—7‘7˜1“:ˆDä
�	‰	ÐEÀtÌRÏTÉTÔTV×TXÑTXÉ[ÓY€AÙØ—w‘w˜q“zˆØ�$˜Ð$Ð$r!   c           
      ó¢	  ‡‡‡— | syt        j                  dd| t         j                  ¬«      } t        j                  dd| t         j                  t         j                  z  ¬«      } t        j                  dd| t         j                  t         j                  z  ¬«      } t        j                  dd| t         j                  t         j                  z  ¬«      } t        j                  dd| t         j                  ¬«      } t        j                  d	d
| t         j                  ¬«      } t        j                  dd| t         j                  ¬«      } 	 ddlm}  || d«      }|j                  d«      D ]%  }dD ]  }|j                  j                  |d«       Œ  Œ' t        |«      } i Šˆˆfd„}t        j                  d|| t         j                  t         j                  z  ¬«      } g Šˆfd„}t        j                  d|| t         j                  t         j                  z  ¬«      } t        j                  d
d| t         j                  ¬«      } t        j                  dd| t         j                  ¬«      } t        j                  dd| t         j                  ¬«      } g }| j                  d«      D ]Ù  }	|	j                  «       }
|
sŒt        j                  dd|
«      }|j                  dd«      j                  dd«      }t        j                  dd|«      }|sŒi‰j                  «       D ]  \  }}|
j                  ||«      }
Œ t        ‰«      D ]  \  }}|
j                  d |z  |«      }
Œ |j!                  |
j                  «       «       ŒÛ dj#                  |«      }‰j                  «       D ]  \  }}|j                  ||«      }Œ t        ‰«      D ]  \  }}|j                  d |z  |«      }Œ t        j                  d!d|«      }t        j                  d"d|«      }t        j                  d#d|«      }t%        «       }g }|j                  d«      D ]X  }t        j                  ddt        j                  dd|«      «      }|sŒ2||v rŒ7|j'                  |«       |j!                  |«       ŒZ dj#                  |«      j                  «       S # t        $ r Y �Œ.w xY w)$u(   ä¿�ç•™è¡¨æ ¼/é™„ä»¶é“¾æŽ¥çš„æ­£æ–‡è½¬æ�¢r   z
<!--.*?-->)Úflagsz<script[^>]*>.*?</script>z<style[^>]*>.*?</style>z8<[^>]+style="[^"]*display:\s*none[^"]*"[^>]*>.*?</[^>]+>z<p[^>]*>\s*<pz<pz</p>\s*</p>z</p>z'<p[^>]*>\s*(?:&ensp;|&nbsp;|\s)*\s*</p>r   )ÚBeautifulSoupzhtml.parserT)ÚstyleÚclassÚlangÚdirÚalignÚvalignÚwidthÚheightÚborderÚcellpaddingÚcellspacingNc                 ó˜  •— | j                  d«      }| j                  d«      }t        j                  dd|«      }t        j                  dd|«      j                  «       }|s|j	                  d«      d   xs d	}t
        j                  j                  ‰|«      }|j                  d
«      rd|z   }dt        ‰«      z  }d|›d|›d�‰|<   |S )Nr   rC   rD   r   r0   r1   r   éÿÿÿÿu   é™„ä»¶z//zhttp:z__LK%d__z	<a href="z" target="_blank">z</a>)
rL   r2   r3   r4   ÚsplitrN   rO   rP   r   rM   )rX   rY   rZ   r[   Úabs_urlÚkeyÚlink_protectra   s         €€r    Ú
_link_replz html_to_text.<locals>._link_repl™   sµ   ø€ Ø�w‰w�q‹zˆØ—‘˜“
ˆÜ�f‰f�Z  UÓ+ˆÜ�f‰f�V˜S #Ó&×,Ñ,Ó.ˆÙØ—*‘*˜S“/ "Ñ%Ò1¨ˆCÜ—,‘,×&Ñ& x°Ó6ˆØ×Ñ˜dÔ#Ø Ñ'ˆGØœ3˜|Ó,Ñ,‰ÚELÊcÐRˆ�SÑØˆ
r!   z&<a\s[^>]*href="([^"]+)"[^>]*>(.*?)</a>c                 óf   •— ‰j                  | j                  d«      «       dt        ‰«      dz
  z  S )Nr   ú__TB%d__r   )rT   rL   rM   )rX   Útable_protects    €r    Ú	_tbl_replzhtml_to_text.<locals>._tbl_repl¨   s.   ø€ Ø×Ñ˜QŸW™W Q›ZÔ(ØœS Ó/°!Ñ3Ñ4Ð4r!   z<table[^>]*>.*?</table>z</p>

z	<br\s*/?>ú
z(</?(?:span|font|o:p|st1?:[a-z]+)\b[^>]*>z

rD   õ   Â r1   z&nbsp;r0   r{   z	__LK\d+__z	__TB\d+__z\n{3,})r2   r3   rJ   rK   Úbs4rg   Úfind_allÚattrsÚpopÚstrÚ	Exceptionru   r4   r   rW   Ú	enumeraterT   ÚjoinÚsetÚadd)Úcontentra   rg   Ú_soupÚtagÚattrry   r}   ÚpartsÚblockÚbÚplainÚkÚvÚiÚtblÚoutÚseenÚfinalÚprw   rx   r|   s    `                   @@r    Úhtml_to_textrš   „   sû  ú€ áØÜ�f‰f�] B¨´r·t±tÔ<€GÜ�f‰fÐ1°2°wÄbÇdÁdÌRÏTÉTÁkÔR€GÜ�f‰fÐ/°°WÄBÇDÁDÌ2Ï4É4ÁKÔP€GÜ�f‰fÐPÐRTÐV]Ôeg×eiÑeiÔln×lpÑlpÑepÔq€GÜ�f‰fÐ% t¨W¼B¿D¹DÔA€GÜ�f‰f�^ V¨W¼B¿D¹DÔA€GÜ�f‰fÐ?ÀÀWÔTV×TXÑTXÔY€GðÝ%Ù˜g }Ó5ˆØ—>‘> $Ó'ò 	*ˆCð Hò *�Ø—	‘	—‘˜d DÕ)ñ*ð	*ô �e“*ˆð €Lõô �f‰fÐ>À
ÈGÔ[]×[_Ñ[_Ôbd×bfÑbfÑ[fÔg€GØ€Mô5ô �f‰fÐ/°¸GÌ2Ï4É4ÔRT×RVÑRVÉ;ÔW€GÜ�f‰f�W˜j¨'¼¿¹Ô>€GÜ�f‰f�\ 4¨¼¿¹Ô=€GÜ�f‰fÐ@À"ÀgÔUW×UYÑUYÔZ€GØ€EØ—‘˜vÓ&ò  ˆØ�K‰K‹MˆÙØÜ—‘�z 2 qÓ)ˆØ—‘˜f cÓ*×2Ñ2°8¸SÓAˆÜ—‘�v˜r 5Ó)ˆÙØØ ×&Ñ&Ó(ò 	 ‰DˆAˆqØ—	‘	˜!˜Q“‰Að	 ä Ó.ò 	/‰FˆAˆsØ—	‘	˜* q™.¨#Ó.‰Að	/à�‰�Q—W‘W“YÕð ð �+‰+�eÓ
€CØ×"Ñ"Ó$ò  ‰ˆˆ1Ø�k‰k˜!˜QÓ‰ð ä˜MÓ*ò /‰ˆˆ3Ø�k‰k˜* q™.¨#Ó.‰ð/ä
�&‰&�˜r 3Ó
'€CÜ
�&‰&�˜r 3Ó
'€CÜ
�&‰&�˜F CÓ
(€CÜ‹5€DØ€EØ�Y‰Y�vÓò ˆÜ�f‰f�V˜R¤§¡¨
°B¸Ó!:Ó;ˆÙØØ�$‰;ØØ�‰�ŒØ�‰�Q�ðð �;‰;�uÓ×#Ñ#Ó%Ð%øôu ò Úðús   ÅAS Ó	SÓSc                 óh  — | j                  d||f«      }|j                  «       ry	 d}	 ddlm}  ||«      }| j                  d||||||t
        t        d|v rdnd|f
«      }|j                  dkD  r`t        j                  d	d
|«      }	t        j                  dd|	«      j                  «       d d }	| j                  d|j                  |||	f«       yy# t        $ r Y Œ¥w xY w# t        j                  $ r=}
dt        |
«      v r*t        j                   d«       t#        | |||||«      cY d }
~
S ‚ d }
~
ww xY w)Nz7SELECT id FROM gov_raw WHERE page_url=? AND site_name=?FÚotherr   )Úclassify_industryz¨INSERT OR IGNORE INTO gov_raw (page_url, source_url, title, content, publish_date, site_name, group_name, script_name, has_table, industry) VALUES (?,?,?,?,?,?,?,?,?,?)z<tabler   rD   r   r0   r1   rG   zTINSERT OR IGNORE INTO gov_search (rowid, title, site_name, summary) VALUES (?,?,?,?)TÚlockedé   )ÚexecuteÚfetchoneÚcrawler_libr�   r…   Ú
GROUP_NAMEÚSCRIPT_NAMEÚrowcountr2   r3   r4   Ú	lastrowidÚsqlite3ÚOperationalErrorr„   ÚtimeÚsleepÚstore_record)Úconnr   rb   rŠ   r^   Ú	site_nameÚcurÚindustryr�   ÚsummaryÚes              r    r«   r«   Ó   s@  € Ø
�,‰,ÐPÐSVÐXaÐRbÓ
c€CØ
‡|�|„~ØðØˆð	Ý5Ù(¨Ó/ˆHð �l‰lð+ð �#�u˜g t¨Y¼
ÄKØ˜gÑ%‰Q¨1¨hð8ó	
ˆð �<‰<˜!ÒÜ—f‘f˜Z¨¨WÓ5ˆGÜ—f‘f˜V S¨'Ó2×8Ñ8Ó:¸4¸CÐ@ˆGØ�L‰LØfØ—‘  y°'Ð:ôð Øøô# ò 	Ùð	ûô$ ×#Ñ#ò Ø”s˜1“vÑÜ�J‰J�qŒMÜ  c¨5°'¸4ÀÓKÕKØûð	úsF   §C! ªC ¸BC! Ã	CÃC! ÃCÃC! Ã!D1Ã41D,Ä%D1Ä+D,Ä,D1c                 ó~  — t         |   }t        d|› d|› d�d¬«       d}d}t        «       }t        d|dz   «      D �]�  }	t        › d|› d	|	› d
�}
	 t        | |
«      }t        ||«      }t        d|	› dt        |«      › d�d¬«       |st        dd¬«        �n8|D �]  \  }}}||v rŒ|j                  |«       	 t        | |«      }t        ||«      \  }}}|s|}|s|}t        ||«      }t        t        j                  dd|«      j                  «       «      }|dk  rt        d|d d › �d¬«       |dz  }Œ›|�5|j                  |||||g dœ«       |dz  }t        d|d d › d|› d�d¬«       ŒÒt!        ||||||«      }|r|dz  }t        d|d d › d|› d�d¬«       n|dz  }t#        j$                  d«       �Œ t#        j$                  d«       �Œ’ t        d|› d|› d|› �d¬«       |S # t        $ r}t        d|	› d|› �d¬«       Y d }~ Œ:d }~ww xY w# t        $ r#}t        d|› d|› �d¬«       |dz  }Y d }~�ŒŸd }~ww xY w) Nú=== ú (z) ===T©Úflushr   r   r   z/0000/zhengfuxinxi-z.htmlz  Page z fetch error: z: z itemsz  Empty page, stopz  detail error rD   r   é
   z  skip empty: é   )r­   r   rb   Úpub_daterŠ   Úattachmentsz
  JSONL + é(   ú)z  + gš™™™™™É?g333333Ó?z  u	   : æ–°å¢ž u	   , è·³è¿‡ )ÚCOLUMNSÚprintrˆ   ÚrangerQ   rA   r…   r_   rM   r‰   rd   rš   r2   r3   r4   rT   r«   r©   rª   )r?   rV   Ú	max_pagesr¬   Ú
jsonl_rowsr­   Ú	new_countÚ
skip_countÚ	seen_urlsÚpager   rU   r±   rW   rv   rb   r^   ÚdhtmlÚdtitleÚddaterc   rŠ   Ú	plain_lenÚoks                           r    Úcrawl_columnrË   õ   s°  € Ü˜‘€IÜ	ˆD��˜2˜c˜U %Ð
(°Õ5Ø€IØ€JÜ“€IÜ�a˜ Q™Ó'ó 5ˆÜ�˜1˜S˜EÐ!4°T°F¸%Ð@ˆð	Ü˜ #Ó&ˆDô ˜4 Ó%ˆÜ�˜�v˜R¤ E£
˜|¨6Ð2¸$Õ?ÙÜÐ&¨dÕ3ÚØ$)ó (	Ñ ˆG�U˜DØ˜)Ñ#ØØ�M‰M˜'Ô"ðÜ˜g wÓ/�ô
 +7°u¸gÓ*FÑ'ˆF�E˜<ÙØ�ÙØ�Ü" <°Ó9ˆGÜœBŸF™F :¨r°7Ó;×AÑAÓCÓDˆIØ˜2Š~Ü˜ v¨c¨r { mÐ4¸DÕAØ˜a‘�
ØØÐ%à×!Ñ!Ø!*Ø"Ø#Ø %Ø&Ø#%ñ#ô ð ˜Q‘�	Ü˜
 6¨#¨2 ; -¨r°%°¸Ð:À$ÕGØÜ˜d G¨V°W¸eÀYÓOˆBÙØ˜Q‘�	Ü˜˜V C R˜[˜M¨¨E¨7°!Ð4¸DÖAà˜a‘�
Ü�J‰J�sŽOðQ(	ôR 	�
‰
�3Žðk5ôl 
ˆBˆyˆk˜ 9 +¨Y°z°lÐ
CÈ4ÕPØÐøôg ò 	Ü�G˜D˜6 °¨sÐ3¸4Õ@Ýûð	ûô ò Ü˜¨ y°°1°#Ð6¸dÕCØ˜a‘�
Ýûðús0   ÁG&Â7HÇ&	HÇ/HÈHÈ	H<ÈH7È7H<c            	      ó¦  — d} d }t        t        j                  «      D ]˜  \  }}|j                  d«      r 	 t	        |j                  dd«      d   «      } Œ7|j                  d«      sŒI|j                  dd«      d   j                  d«      D �cg c]#  }|j                  «       sŒ|j                  «       ‘Œ% }}Œš |r|nt        t        j                  «       «      }t        «       }t        rg nd }d }|€=t        j                  t        d¬«      }|j!                  d«       |j!                  d	«       d
}	|D ]'  }
	 |	t#        ||
| ||«      z  }	|r|j%                  «        Œ) |�nd
d l}t/        t        dd¬«      5 }|D ]'  }|j1                  |j3                  |d¬«      dz   «       Œ) 	 d d d «       t)        dt        › dt5        |«      › d�d¬«       n|j7                  «        t)        dt8        › d|	› d�d¬«       y # t        $ r Y �Œäw xY wc c}w # t&        $ r0}t)        d|
› d|› �d¬«       |r|j+                  «        Y d }~�Œd }~ww xY w# 1 sw Y   Œ¥xY w)Nr   z--pages=ú=z--col=ú,é<   r8   zPRAGMA busy_timeout=60000zPRAGMA journal_mode=WALr   z	  COLUMN z ERROR: Trµ   Úwr:   )r=   F)Úensure_asciir~   zJSONL written: r´   z rows)r³   u    done: æ–°å¢ž z ===)r†   ÚsysÚargvr   Úintru   Ú
ValueErrorr4   Úlistr½   Úkeysr.   r   r§   ÚconnectÚDB_PATHr    rË   Úcommitr…   r¾   ÚrollbackÚjsonÚopenÚwriteÚdumpsrM   Úcloser¤   )rÀ   Ú	only_colsr”   ÚaÚxÚcolsr?   rÁ   r¬   Ú	total_newrV   r±   Ú_jsonÚfÚrows                  r    Úmainré   5  s(  € Ø€IØ€IÜœ#Ÿ(™(Ó#ò X‰ˆˆ1Ø�<‰<˜
Ô#ðÜ §¡¨¨Q£°Ñ 2Ó3‘	ð �\‰\˜(Õ#Ø,-¯G©G°C¸«O¸AÑ,>×,DÑ,DÀSÓ,IÖW qÈQÏWÉWÍY˜Ÿ™�ÐWˆIÑWðXñ "‰9¤t¬G¯L©L«NÓ';€Dä‹n€GÝ!‘ t€JØ€DØÐÜ�‰œw°Ô3ˆØ�‰Ð0Ô1Ø�‰Ð.Ô/à€IØò  ˆð	 Øœ g¨s°I¸tÀZÓPÑPˆIÙØ—‘”øð	 ð ÐÛÜ”*˜c¨GÔ4ð 	E¸Ø!ò E�Ø—‘˜Ÿ™ C°e˜Ó<¸tÑCÕDñE÷	Eô 	�¤
˜|¨2¬c°*«oÐ->¸fÐEÈTÖRà�
‰
ŒÜ	ˆD”�˜^¨I¨;°dÐ
;À4ÖHøôC ò Úðüò Xøô" ò 	 Ü�I˜c˜U (¨1¨#Ð.°dÕ;ÙØ—‘”ÿùð	 ú÷	Eð 	EúsA   ¶G6ÂHÂ#HÄ7$HÅ5-IÇ6	HÈHÈ	IÈ%H?È?IÉIÚ__main__)é   )N) r%   r2   rÒ   Úosr©   r§   Úurllib.parserN   r(   rQ   r   r½   r£   r¤   Úenvironr;   rÙ   r   r+   ÚadaptersÚHTTPAdapterr   r.   r6   rA   r_   rd   rš   r«   rË   ré   r"   © r!   r    ú<module>rò      sð   ðñó 
Û 
Û 	Û Û Û Û ð %€	Ø€à%Ø%Ø%Ø%Ø%Ø%Ø%ñ€ð €
Ø%€Ø
�*‰*�.‰.˜Ð&;Ó
<€Ø�Z‰Z�^‰^˜L¨"Ó-€
ð @ØOØ'ñ€ô/�X×&Ñ&×2Ñ2ô /òòóòò6%ò<L&ò^óD=ò@(IðV ˆzÒÙ…Fð r!   