
    !h                         S SK r S SKrS SKrS SKrS SKJr  S SKJrJr  S SK	J
r
  S SKJr  S SKJrJr   " S S\R                   5      r " S	 S
\R$                  5      rg)    N)Any)ItemAdapteris_item)defer)ScrapyDeprecationWarning)RequestResponsec                   <   ^  \ rS rSrSrSrS\S\4U 4S jjrSrU =r	$ )ScrapyJSONEncoder   z%Y-%m-%dz%H:%M:%Soreturnc                   > [        U[        5      (       a  [        U5      $ [        U[        R                  5      (       a*  UR	                  U R
                   SU R                   35      $ [        U[        R                  5      (       a  UR	                  U R
                  5      $ [        U[        R                  5      (       a  UR	                  U R                  5      $ [        U[        R                  5      (       a  [        U5      $ [        U[        R                  5      (       a  [        U5      $ [        U[        5      (       a3  S[        U5      R                    SUR"                   SUR$                   S3$ [        U[&        5      (       a3  S[        U5      R                    SUR(                   SUR$                   S3$ [+        U5      (       a  [-        U5      R/                  5       $ [0        TU ]e  U5      $ )N <>)
isinstancesetlistdatetimestrftimeDATE_FORMATTIME_FORMATdatetimedecimalDecimalstrr   Deferredr   type__name__methodurlr	   statusr   r   asdictsuperdefault)selfr   	__class__s     ]/root/1688_scrapy/alibaba-scraper/venv/lib/python3.13/site-packages/scrapy/utils/serialize.pyr'   ScrapyJSONEncoder.default   su   a7Na**++::!1!1 2!D4D4D3EFGGa''::d..//a''::d..//a))q6Ma((q6Ma!!tAw''(!((1QUUG1==a""tAw''(!((1QUUG1==1::q>((**wq!!     )
r!   
__module____qualname____firstlineno__r   r   r   r'   __static_attributes____classcell__r)   s   @r*   r   r      s%    KK" " " "r,   r   c                   (   ^  \ rS rSrU 4S jrSrU =r$ )ScrapyJSONDecoder(   c                 Z   > [         R                  " S[        SS9  [        TU ]  " U0 UD6  g )Nz\The ScrapyJSONDecoder class is deprecated and will be removed in a future version of Scrapy.   )category
stacklevel)warningswarnr   r&   __init__)r(   argskwargsr)   s      r*   r=   ScrapyJSONDecoder.__init__)   s,    j-	

 	$)&)r,   r-   )r!   r.   r/   r0   r=   r1   r2   r3   s   @r*   r5   r5   (   s    * *r,   r5   )r   r   jsonr;   typingr   itemadapterr   r   twisted.internetr   scrapy.exceptionsr   scrapy.httpr   r	   JSONEncoderr   JSONDecoderr5   r-   r,   r*   <module>rI      sD         , " 6 )"(( "4*(( *r,   