Ë
    ¡Š£j;  ã                   ó  — 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	e	dz   Z
dZdZdZdZd	Z	 dd
lmZ ej&                  j)                  dd«      Zej&                  j)                  dd«      ZdddddœZdZ eej4                  «      D ]k  \  ZZej;                  d«      r	  eej?                  dd«      d   «      ZŒ4edk(  sŒ:edz    e!ej4                  «      k  sŒS	  eej4                  edz      «      ZŒm edk\  rendZ"dZ# ejH                  d ejJ                   ej                  «       e#dz  z
  «      «      Z&h d£Z'd„ Z(d„ Z)d„ Z*d „ Z+d&d!„Z,d"„ Z-d#„ Z.d$„ Z/e0d%k(  r e/«        yy# e$ r dZY �Œ9w xY w# e $ r Y Œñw xY w# e $ r Y Œüw xY w)'u^  èˆ’åŸŽåŽ¿äººæ°‘æ”¿åºœ - åŸºå±‚é‡�ç‚¹é¢†åŸŸä¿¡æ�¯å…¬å¼€ (site/label/8888 JSON API è�šå�ˆæ �ç›®)
https://www.shucheng.gov.cn/site/tpl/5186?pid=7367495&id=7367498&organId=6596321
Lonsun é¾™è®¯ CMS: label API è¿”å›žå…¨éƒ¨å­�æ �ç›®(æƒ æ°‘æƒ å†œ/æ–°é—»å�‘å¸ƒ/æ”¿åºœå¼€æ”¾æ—¥ç­‰) å…±7935æ�¡
ç”¨æˆ·è¦�æ±‚: æ–°å¢žç«™ç‚¹å�ªæµ‹å‰�5é¡µ, ä¸�è·‘å…¨é‡� (2026-08-18)é    Nzhttps://www.shucheng.gov.cnz/site/label/8888u4   èˆ’åŸŽåŽ¿äººæ°‘æ”¿åºœ-åŸºå±‚é‡�ç‚¹é¢†åŸŸä¿¡æ�¯å…¬å¼€u   å®‰å¾½zcrawl_shucheng_jcdd.pyu+   åŸºå±‚é‡�ç‚¹é¢†åŸŸä¿¡æ�¯å…¬å¼€-è¡Œæ”¿å®¡æ‰¹Ú7367498)ÚBeautifulSoupÚDB_PATHz/root/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zh-CN,zh;q=0.9zPhttps://www.shucheng.gov.cn/site/tpl/5186?pid=7367495&id=7367498&organId=6596321ÚXMLHttpRequest)z
User-AgentzAccept-LanguageÚRefererzX-Requested-Withé   z--pages=ú=é   z--pagesiG  z%Y-%m-%di€Q >)   ÚpÚddÚdlÚdtÚh1Úh2Úh3Úh4Úh5Úh6ÚhrÚliÚolÚtdÚthÚtrÚulÚdivÚnavÚpreÚformÚmainÚasideÚtableÚtbodyÚtfootÚtheadÚcenterÚdialogÚfigureÚfooterÚheaderÚhgroupÚaddressÚarticleÚcaptionÚdetailsÚsectionÚfieldsetÚ
blockquoteÚ
figcaptionc                 óÒ   ‡‡‡— | €yddl }ddlmŠ g Šˆˆˆfd„Š ‰| «       dj                  ‰«      }|j	                  dd|«      }|j	                  dd	|«      }|j                  «       S )
ul   å�—çº§è¾¹ç•Œå‡ºæ�¢è¡Œã€�è¡Œå†…èŠ‚ç‚¹ç›´æŽ¥æ‹¼æŽ¥ã€�<br> å‡ºæ�¢è¡Œï¼ˆâ‰ˆ æµ�è§ˆå™¨çœ‹åˆ°çš„æ�¢è¡Œç»“æž„ï¼‰ã€‚Nr   r   )ÚNavigableStringc                 óF  •— | j                   D ]‘  }t        |‰«      r‰j                  t        |«      «       Œ*t	        |dd «      dk(  r‰j                  d«       ŒLt	        |dd «      t
        v r+‰j                  d«        ‰|«       ‰j                  d«       ŒŠ ‰|«       Œ“ y )NÚnameÚbrú
)ÚchildrenÚ
isinstanceÚappendÚstrÚgetattrÚ_BLOCK_TAGS)ÚnodeÚchr7   ÚoutÚwalks     €€€ú(/root/gov_crawler/crawl_shucheng_jcdd.pyrE   zbody_text.<locals>.walkE   s„   ø€ Ø—-‘-ò 
	ˆBÜ˜"˜oÔ.Ø—
‘
œ3˜r›7Õ#Ü˜˜V TÓ*¨dÒ2Ø—
‘
˜4Õ Ü˜˜V TÓ*¬kÑ9Ø—
‘
˜4Ô Ù�R”Ø—
‘
˜4Õ á�R•ñ
	ó    z[ \t\r\f\v]*\n[ \t\r\f\v]*r;   z\n{3,}ú

)ÚreÚbs4r7   ÚjoinÚsubÚstrip)ÚelÚ_reÚtr7   rD   rE   s      @@@rF   Ú	body_textrQ   =   sb   ú€ à	€zØÛÝ#Ø
€Cöñ 	ˆ„HØ
�‰�‹€AØ�‰Ð-¨t°QÓ7€AØ�‰�	˜6 1Ó%€AØ�7‰7‹9ÐrG   c                 ó€   — | sydd l }|j                  | «      } t        j                  dd| «      } | j	                  «       S )Nr   r   z\s+ú )ÚhtmlÚunescaperI   rL   rM   )rP   Úhtml_libs     rF   Úclean_titlerW   X   s9   € ÙØÛØ×Ñ˜!Ó€AÜ
�‰ˆv�s˜AÓ€AØ�7‰7‹9ÐrG   c                 óô  — dd l }dd l}|j                  |j                  j                  «       dddt
        dt        | «      dddd	d
ddddœ}	 |j                  t        |t        d¬«      }|j                  dk7  rt        d|j                  › d�d¬«       g dfS |j                  «       }|j                  dg «      }|j                  dd«      }||fS # t        $ r}t        d|› �d¬«       g dfcY d }~S d }~ww xY w)Nr   ÚpublicInfoListÚ6788831Ú6596321Ú20Útruez
yyyy-MM-ddÚ50Ú4Úlistr   )Ú	labelNameÚsiteIdÚorganIdÚcatIdsÚpageSizeÚ	pageIndexÚisDateÚ
dateFormatÚlengthÚtypeÚactionÚresultÚisJsonÚ
isSetValueé   )ÚparamsÚheadersÚtimeoutéÈ   z  [API status ú]T©ÚflushÚdataÚtotalz  [API fail] )ÚrequestsÚurllib3Údisable_warningsÚ
exceptionsÚInsecureRequestWarningÚCAT_IDSr?   ÚgetÚAPI_URLÚHEADERSÚstatus_codeÚprintÚjsonÚ	Exception)	Úpagery   rz   rp   Úrrw   Úitemsrx   Úes	            rF   Ú	fetch_apirŠ   a   sú   € ßØ×Ñ˜W×/Ñ/×FÑFÔGà%ØØÜØÜ˜“YØØ"ØØØØØØñ€Fð Ø�L‰Lœ¨¼È"ˆLÓMˆØ�=‰=˜CÒÜ�N 1§=¡= /°Ð3¸4Õ@Ø�q�5ˆLØ�v‰v‹xˆØ—‘˜ Ó$ˆØ—‘˜ !Ó$ˆØ�eˆ|ÐøÜò Ü�˜a˜SÐ!¨Õ.Ø�1ˆu�ûðús%   ÁA
C Â7C Ã	C7ÃC2Ã,C7Ã2C7c                 ó¬  — dd l }dd l}|j                  |j                  j                  «       	 |j                  | t        d¬«      }|j                  dk(  rXd|j                  j                  d«      xs dj                  «       vr|j                  j                  dd	¬
«      S |j                  S 	 y # t        $ r}t        d|› �d¬«       Y d }~y d }~ww xY w)Nr   ro   )rq   rr   rs   ÚcharsetzContent-Typer   úutf-8Úreplace)Úerrorsz  [fetch fail] Tru   )ry   rz   r{   r|   r}   r   r�   r‚   rq   ÚlowerÚcontentÚdecodeÚtextr…   rƒ   )Úurlry   rz   r‡   r‰   s        rF   Úfetchr•   ‚   s½   € ßØ×Ñ˜W×/Ñ/×FÑFÔGð1Ø�L‰L˜¤g°rˆLÓ:ˆØ�=‰=˜CÒà §¡§¡¨~Ó!>Ò!DÀ"× KÑ KÓ MÑMØ—y‘y×'Ñ'¨¸	Ð'ÓBÐBØ—6‘6ˆMð	  ð øô ò 1Ü� ˜sÐ#¨4×0Ñ0Øûð1ús   ¯A2B0 Â"B0 Â0	CÂ9CÃCc                 óà  — t         €yt        t        | «      d«      }|j                  d«      D ]P  }|j                  dd«      }|sŒ|j	                  d«      rŒ*|r t
        j                  j                  ||«      n||d<   ŒR |j                  d«      D ]P  }|j                  dd«      }|sŒ|j	                  d«      rŒ*|r t
        j                  j                  ||«      n||d<   ŒR t        |«      S )	Nr   úhtml.parserÚaÚhref)ÚhttpÚ
javascriptú#ÚimgÚsrc)rš   zdata:r›   )r   r?   Úfind_allr   Ú
startswithÚurllibÚparseÚurljoin)r$   Úbase_urlÚtblr˜   r™   r�   rž   s          rF   Úhtml_table_to_htmlr¦   ‘   sÖ   € ÜÐØÜ
œ˜E›
 MÓ
2€CØ�\‰\˜#Óò SˆØ�u‰u�V˜RÓ ˆÚ˜Ÿ™Ð(CÕDÙ@HœŸ™×,Ñ,¨X°tÔ<ÈdˆAˆfŠIðSð �|‰|˜EÓ"ò RˆØ�g‰g�e˜RÓ ˆÚ�s—~‘~Ð&EÕFÙ@HœŸ™×-Ñ-¨h¸Ô<ÈcˆC�ŠJðRô ˆs‹8€OrG   c                 ó  ‡— t         €dddg dœS t        | d«      }d}|j                  dddi¬«      }|r$|j                  d«      r|d   j                  «       }|s&|j	                  d	«      }|r|j                  d
d¬«      }|s4|j                  r(|j                  j                  xs dj                  «       }d}|j                  dddi¬«      }|r=|j                  d«      r,t        j                  d|d   «      }|r|j                  d«      }|s)t        j                  d| «      }|r|j                  d«      }|j	                  d«      }	|	s5|j                  dt        j                  dt        j                  «      ¬«      }	|	s||d|›d|xs d›d�g dœS g }
g }|	j                  g d¢d¬«      D �]Î  }|j                  dv r!|j                  d«      r|j                  dk(  rŒ3|j                  dk(  r|j                  d«      rŒT|j                  dv �rt|j                  d
d¬«      }|j                  dk(  rt!        |«      }|j                  ddd¬«      D �]  }|d    j                  «       Š|j                  d¬«      xs |j                  d!d«      }|j                  d"d«      }|r6|j#                  d#«      r	t$        |z   n|j'                  d#d«      d$   d#z   |z   }nz‰j#                  d%«      r|j'                  d#d«      d$   d#z   ‰d&d  z   }nJ‰j#                  d#«      r
t$        ‰z   }n/‰j#                  d'«      r‰}n|j'                  d#d«      d$   d#z   ‰z   }|
j)                  ||d(œ«       �Œ |s�ŒÀ|j)                  d)|› d*�«       �Œ×|j                  dk(  r#t+        ||«      }|s�Œö|j)                  |«       �Œ	|j                  d+k(  s�Œ|j                  d«      r�Œ-|j                  d,d«      }|j                  d-d«      }|s�ŒU|j#                  d.«      rd/|z   }nG|j#                  d#«      r
t$        |z   }n,|j#                  d'«      s|j'                  d#d«      d$   d#z   |z   }|j)                  d0|›d|xs d1›d2�«       �ŒÑ |	j                  dd¬3«      D �]{  }|d    j                  «       Št        j                  d4‰t        j                  «      s‰j#                  d'«      sŒN|j                  d5«      rŒ`|j                  d¬«      xs |j                  d!d«      }|sŒ‰‰d%k7  sŒ�t-        ˆfd6„|
D «       «      rŒ¤|j                  d"d«      }|r6|j#                  d#«      r	t$        |z   n|j'                  d#d«      d$   d#z   |z   }nz‰j#                  d%«      r|j'                  d#d«      d$   d#z   ‰d&d  z   }nJ‰j#                  d#«      r
t$        ‰z   }n/‰j#                  d'«      r‰}n|j'                  d#d«      d$   d#z   ‰z   }|
j)                  ||d(œ«       �Œ~ |	j                  d
d¬«      }|s&|r$|	j                  g d¢«      s|j)                  |«       |s×g }|	j                  dd¬3«      D ]»  }|d    j                  «       Š‰j#                  d'«      sŒ(d7‰vsŒ-|j                  d¬«      xs |j                  d!d«      xs ‰}‰j#                  d%«      r|j'                  d#d«      d$   d#z   ‰d&d  z   }n‰j#                  d#«      r
t$        ‰z   }n‰}|j)                  d|›d|›d�«       Œ½ |r|}|sd|›d|xs d›d�g}t/        «       }g }|
D ]/  }|d8   |vsŒ|j1                  |d8   «       |j)                  |«       Œ1 d9j3                  |«      }||||dœS ):Nr   )ÚtitleÚdater‘   Úattachmentsr—   Úmetar9   ÚArticleTitle)Úattrsr‘   z-h1.wztit, h1, h2, div.title, div.ArticleTitlerS   T)rM   ÚPubDateú(\d{4}-\d{2}-\d{2})r   z div.j-fontContent, div#zoom, div.details-content, div.content, div.article-content, div.cont, #Zoom, font#Zoom, div.TRS_Editor, div.trs_editor_view, #js_contentr   zcontent|article|details)Úclass_z<p><a href="z" target="_blank">u   æŸ¥çœ‹åŽŸæ–‡z</a></p>)r   r    r$   r�   )Ú	recursive)r   r    r$   r   r    r˜   )r™   Úappendixr™   ÚdownloadÚOLDSRCú/r   z./é   rš   )r¨   r”   z<p>z</p>r�   rž   Úaltz//zhttps:z	<a href="u   å›¾ç‰‡z</a>)r™   z\.(pdf|docx?|xlsx?|rar|zip)$r²   c              3   ój   •K  — | ]*  }|d    j                  ‰j                  d«      d   «      –— Œ, y­w)r”   rµ   éÿÿÿÿN)ÚendswithÚsplit)Ú.0Úattr™   s     €rF   ú	<genexpr>zparse_detail.<locals>.<genexpr>ø   s0   øè ø€ Ò2sÐ`c°3°u±:×3FÑ3FÀtÇzÁzÐRUÃÐWYÑGZ×3[Ñ2sùs   ƒ03r›   r”   rH   )r   Úfindr   rM   Ú
select_oneÚget_textr¨   ÚstringrI   ÚsearchÚgroupÚcompileÚIrŸ   r9   Úfind_parentrQ   r    ÚBASE_URLÚrsplitr>   r¦   ÚanyÚsetÚaddrK   )rT   r”   Úsoupr¨   rP   ÚhÚ	date_textÚmdÚmÚcontent_divrª   ÚpartsrN   r“   r˜   ÚatitleÚoldsrcÚahrefÚtbl_htmlrž   r·   Ú	bare_textÚ
link_parasÚseenÚunique_attachmentsr½   r‘   r™   s                              @rF   Úparse_detailrÜ       s4  ø€ ÜÐØ R°BÀrÑJÐJÜ˜˜}Ó-€Dà€EØ�	‰	�& ¨Ð 8ˆ	Ó9€AÙˆQ�U‰U�9ÔØ�)‘×"Ñ"Ó$ˆÙØ�O‰OÐKÓLˆÙØ—J‘J˜s¨$�JÓ/ˆEÙ�T—Z’ZØ—‘×"Ñ"Ò( b×/Ñ/Ó1ˆà€IØ	�‰�6 &¨)Ð!4ˆÓ	5€BÙ	ˆb�f‰f�YÔÜ�I‰IÐ,¨b°©mÓ<ˆÙØŸ™ ›
ˆIÙÜ�I‰IÐ,¨dÓ3ˆÙØŸ™ ›
ˆIà—/‘/ð  #Eó  F€KÙØ—i‘i ¬b¯j©jÐ9RÔTV×TXÑTXÓ.Y�iÓZˆÙà©	ÚKNÐPUÒPgÐYgÑPgÐhØ!ñ#ð 	#ð €KØ€Eà×"Ñ"Ò#?È4Ð"ÓPó +]ˆØ�7‰7�lÑ" r§~¡~°gÔ'>À2Ç7Á7ÈcÂ>ØØ�7‰7�gÒ "§.¡.°Ô"9Øà�7‰7�lÒ"Ø—;‘;˜s¨$�;Ó/ˆDØ�w‰w˜%ÒÜ  “}�Ø—[‘[ ¨4¸$�[Ó?ó D�Ø˜‘y—‘Ó(�ØŸ™¨$˜Ó/ÒH°1·5±5¸ÀRÓ3H�ØŸ™˜x¨Ó,�ÙØ39×3DÑ3DÀSÔ3IœX¨Ò.ÐPS×PZÑPZÐ[^Ð`aÓPbÐcdÑPeÐhkÑPkÐntÑPt‘Eà—‘ tÔ,Ø #§
¡
¨3°Ó 2°1Ñ 5¸Ñ ;¸dÀ1À2¸hÑ F™ØŸ™¨Ô-Ü (¨4¡™ØŸ™¨Ô0Ø $™à #§
¡
¨3°Ó 2°1Ñ 5¸Ñ ;¸dÑ B˜Ø×"Ñ"¨V¸EÑ#BÖCðDó  Ø—‘˜s 4 &¨Ð-Ö.à�W‰W˜ÒÜ)¨"¨cÓ2ˆHÛØ—‘˜XÖ&Ø�W‰W˜Ô b§n¡n°WÖ&=Ø—&‘&˜ Ó#ˆCØ—&‘&˜ Ó#ˆCÛØ—>‘> $Ô'Ø" S™.‘CØ—^‘^ CÔ(Ü" S™.‘CØŸ™¨Ô/ØŸ*™* S¨!Ó,¨QÑ/°#Ñ5¸Ñ;�CØ—’ÂcÈ3Ê?ÐRZÉ?Ð[Ö\ðW+]ðZ ×!Ñ! #¨DÐ!Ó1ó DˆØ�‰y�‰Ó ˆÜ�I‰IÐ5°t¼R¿T¹TÔBÀdÇoÁoÐV\ÕF]Ðgh×glÑglÐmwÕgxØ—Z‘Z d�ZÓ+ÒD¨q¯u©u°ZÀÓ/DˆFÚ˜$ $›,¬sÓ2sÐgrÔ2sÕ/sØŸ™˜x¨Ó,�ÙØ39×3DÑ3DÀSÔ3IœX¨Ò.ÐPS×PZÑPZÐ[^Ð`aÓPbÐcdÑPeÐhkÑPkÐntÑPt‘Eà—‘ tÔ,Ø #§
¡
¨3°Ó 2°1Ñ 5¸Ñ ;¸dÀ1À2¸hÑ F™ØŸ™¨Ô-Ü (¨4¡™ØŸ™¨Ô0Ø $™à #§
¡
¨3°Ó 2°1Ñ 5¸Ñ ;¸dÑ B˜Ø×"Ñ"¨V¸EÑ#BÖCð#Dð( ×$Ñ$ S°Ð$Ó5€IÙ‘Y {×'7Ñ'7Ò8TÔ'UØ�‰�YÔáØˆ
Ø×%Ñ% c°Ð%Ó5ò 
	bˆAØ�V‘9—?‘?Ó$ˆDØ�‰˜vÕ&¨<¸tÒ+CØŸ™¨$˜Ó/ÒP°1·5±5¸ÀRÓ3HÒPÈD�Ø—?‘? 4Ô(ØŸJ™J s¨AÓ.¨qÑ1°CÑ7¸$¸q¸r¸(ÑB‘EØ—_‘_ SÔ)Ü$ t™O‘Eà �EØ×!Ò!ÒRWÒY_Ð"`Õað
	bñ ØˆEââADÀeÒF]È~ÑF]Ð^Ð_ˆä‹5€DØÐØò +ˆØˆu‰:˜TÒ!Ø�H‰H�S˜‘ZÔ Ø×%Ñ% cÕ*ð+ð
 �k‰k˜%Ó €GØ I¸'ÐRdÑeÐerG   c                 ó–  — t         rdt        t         dd¬«      5 }| D ]+  }|j                  t        j                  |d¬«      dz   «       Œ- 	 d d d «       t        dt        | «      z  «       y t        j                  t        «      }|j                  «       }d}| D ]u  }|j                  d	|d
   f«       |j                  «       rŒ*|j                  d|d   t        t        |d
   |d   |d   d|d   |d   t        f
«       |j                   sŒq|dz  }Œw |j#                  «        |j%                  «        t        d|z  «       y # 1 sw Y   ŒõxY w)Nr˜   r�   )ÚencodingF©Úensure_asciir;   z  [jsonl] wrote %dr   z'SELECT id FROM gov_raw WHERE page_url=?r”   z¨INSERT OR IGNORE INTO gov_raw (title, site_name, group_name, page_url, publish_date, content, summary, attachments, date_rank, script_name) VALUES (?,?,?,?,?,?,?,?,?,?)r¨   r©   r‘   r   Úattachments_jsonÚ	date_rankr   u
   æ–°å¢ž: %d)r   ÚopenÚwriter„   Údumpsrƒ   ÚlenÚsqlite3Úconnectr   ÚcursorÚexecuteÚfetchoneÚ	SITE_NAMEÚ
GROUP_NAMEÚSCRIPT_NAMEÚrowcountÚcommitÚclose)rˆ   ÚfÚitÚconnÚcÚ	new_counts         rF   Úpush_to_searchdbr÷   +  sJ  € ÝÜ”*˜c¨GÔ4ð 	C¸Øò C�Ø—‘œŸ
™
 2°EÔ:¸TÑAÕBñC÷	Cô 	Ð"¤S¨£ZÑ/Ô0Øä�?‰?œ7Ó#€DØ�‰‹€AØ€IØò 	ˆØ	�	‰	Ð;¸bÀ¹i¸\ÔJØ�:‰:Œ<ØØ	�	‰	ð wØ�‰[œ)¤Z°°E±¸B¸v¹JÈÈ9ÉÐWYÐ[]Ð^pÑ[qÐsuð  wBñ  tCô  EPð  Qô	
ð �:‹:Ø˜‰N‰Ið	ð 	‡K�K„MØ‡J�J„LÜ	ˆ,˜Ñ
"Õ#÷+	Cð 	Cús   ™1D?Ä?Ec                  ón  — t        dt        z  «       g } d}t        dt        dz   «      D ]Ö  }t	        |«      \  }}|st        d|› d�«       Œ#|}|D ]�  }t        |j                  dd«      «      }|j                  dd«      }|j                  d	«      xs |j                  d
«      xs dd d }|r|sŒ`|j                  d«      s	t        |z   }| j                  |||f«       Œ� t        d|› dt        |«      › d|› d�d¬«       ŒØ g }	| D ]&  \  }
}}|r
|t        k  rŒ|	j                  |
||f«       Œ( t        dt        | «      t        |	«      fz  «       g }|	D �]  \  }
}}t        |
«      }|s|j                  |
||dddddœ«       Œ/t        ||
«      }|j                  dg «      }dj                  d„ |D «       «      }|j                  d«      xs |}d}t        j                   d|«      }|r*t#        |j%                  d«      j'                  dd«      «      }|j                  |
|j                  d«      xs |||j                  dd«      |t)        j*                  |d¬«      |dœ«       �Œ t-        d„ |D «       «      }t-        d„ |D «       «      }t        d t        t        |«      ||fz  «       t/        |«       y )!Nu   === %s done å‰�ç½® ===r   r   z  page z empty/failedr¨   r   ÚlinkÚpublishDateÚ
createDateé
   rš   z: z items (total=ú)Tru   u#   åˆ—è¡¨æ€»æ•°: %d, 3å¹´æˆªæ–­å�Ž: %dz[])r”   r¨   r©   r‘   rª   rá   râ   rª   z; c              3   ó&   K  — | ]	  }|d    –— Œ y­w)r”   N© )r¼   r˜   s     rF   r¾   zmain.<locals>.<genexpr>i  s   è ø€ Ò4¨!˜Q˜u�XÑ4ùs   ‚r©   r¯   ú-r‘   Frß   c              3   ó,   K  — | ]  }|d    rŒ	d–— Œ y­w)r‘   r   Nrÿ   ©r¼   r‡   s     rF   r¾   zmain.<locals>.<genexpr>v  s   è ø€ Ò7�a¨!¨I«,”Ñ7ùó   ‚
�c              3   ó,   K  — | ]  }|d    sŒ	d–— Œ y­w)rª   r   Nrÿ   r  s     rF   r¾   zmain.<locals>.<genexpr>w  s   è ø€ Ò;˜!¨!¨MÓ*:”AÑ;ùr  z5[RESULT] %s: %d new, %d empty content, %d attachments)rƒ   rì   ÚrangeÚ_PAGESrŠ   rW   r   r    rÈ   r>   ræ   Ú_CUTOFF_DATEr•   rÜ   rK   rI   rÃ   ÚintrÄ   rŽ   r„   rå   Úsumr÷   )Ú	all_itemsÚtotal_recordsr†   rˆ   rx   ró   r¨   rù   r©   Úfilteredr™   ÚresultsrT   ÚdÚattsÚatt_textÚ
date_finalÚrankrÑ   ÚemptyÚ	att_counts                        rF   r"   r"   E  sÎ  € Ü	Ð
"¤YÑ
.Ô/Ø€IØ€MÜ�aœ !™Ó$ò XˆÜ  “‰ˆˆuÙÜ�G˜D˜6 Ð/Ô0ØØˆØò 	2ˆBÜ §¡ w°Ó 3Ó4ˆEØ—6‘6˜& "Ó%ˆDØ—F‘F˜=Ó)ÒG¨R¯V©V°LÓ-AÒGÀRÈÈ"ÐMˆDÙ¡ØØ—?‘? 6Ô*Ü $‘�Ø×Ñ˜d E¨4Ð0Õ1ð	2ô 	�˜�v˜R¤ E£
˜|¨>¸-¸ÈÐJÐRVÖWðXð" €HØ&ò -Ñˆˆe�TÙ�Dœ<Ò'ØØ�‰˜˜u dÐ+Õ,ð-ô 
Ð
/´3°y³>Ä3ÀxÃ=Ð2QÑ
QÔRà€GØ%ó Ñˆˆe�TÜ�T‹{ˆÙØ�N‰N 4°%ÀÐRTÐegð  ~Bð  QRñ  Sô  TØÜ˜˜tÓ$ˆØ�u‰u�] BÓ'ˆØ—9‘9Ñ4¨tÔ4Ó4ˆØ—U‘U˜6“]Ò* dˆ
ØˆÜ�I‰IÐ,¨jÓ9ˆÙÜ�q—w‘w˜q“z×)Ñ)¨#¨rÓ2Ó3ˆDØ�‰Ø !§%¡%¨£.Ò"9°EÀ:Ø—u‘u˜Y¨Ó+¸HÜ $§
¡
¨4¸eÔ DØñ	
ö 	ðô( Ñ7˜7Ô7Ó7€EÜÑ;˜wÔ;Ó;€IÜ	Ð
AÄYÔPSÐT[ÓP\Ð^cÐenÐDoÑ
oÔpÜ�WÕrG   Ú__main__)r   )1Ú__doc__ÚsysÚosrI   Útimer„   Úurllib.parser¡   rç   rÈ   r€   rì   rí   rî   ÚCATEGORYr~   rJ   r   ÚImportErrorÚenvironr   r   r   r�   Ú
_MAX_PAGESÚ	enumerateÚargvÚir˜   r    r  r»   Ú
ValueErrorræ   r  Ú_DAYS_CUTOFFÚstrftimeÚ	localtimer  rA   rQ   rW   rŠ   r•   r¦   rÜ   r÷   r"   Ú__name__rÿ   rG   rF   ú<module>r'     sØ  ðñF÷ 6× 5× 5Ó 5à(€Ø
Ð'Ñ
'€ØB€	Ø€
Ø&€Ø8€Ø
€ðÝ!ð �*‰*�.‰.˜Ð$5Ó
6€Ø�Z‰Z�^‰^˜L¨"Ó-€
ð @Ø'ØaØ(ñ	€ð €
Ù�c—h‘hÓò 
�D€A€qØ‡|�|�JÔð	Ù˜QŸW™W S¨!›_¨QÑ/Ó0‰Jð 
ˆi‹˜A ™E¡C¨¯©£MÓ1ð	Ù˜SŸX™X a¨!¡e™_Ó-‰Jð
ð " Q’‰¨A€à€Øˆt�}‰}˜Z¨¨¯©¸	¸¿	¹	»ÀlÐUZÑFZÑ8ZÓ)[Ó\€ò*€òò6òòBóòHfòV$ò44ðn ˆzÒÙ…Fð øðS ò ØƒMðûð$ ò 	Ùð	ûð
 ò 	Ùð	ús5   ±E& Â"E4ÃE?Å&E1Å0E1Å4E<Å;E<Å?FÆF