
    i                     b    d Z ddlmZ ddlmZ dZdZdgZdZdZ	dZ
d	Zd
ddddddZd ZdefdZy)a  Engine for Microsoft Learn, Microsoft's technical knowledge base.

To use this engine add the following entry to your engines list
in ``settings.yml``:

.. code:: yaml

  - name: microsoft learn
    engine: microsoft_learn
    shortcut: msl
    disabled: false
    )	urlencode)EngineResultsonlineTit
   Fz'https://learn.microsoft.com/api/search?zhttps://learn.microsoft.com
Q123663245NJSON)websitewikidata_idofficial_api_documentationuse_official_apirequire_api_keyresultsc                     |d   dk(  rd|d<   d| fd|d   fdddd	d
d|d   dz
  t         z  fddddg}t        t        |      z   |d<   |S )Nlanguageallzen-ussearchlocale)scoringprofilezsemantic-answers)facetcategory)r   products)r   tags)z$top10z$skippageno   )expandScopetrue)includeQuestionfalse)applyOperatorr    )	partnerId	LearnSiteurl)	page_size
search_apir   )queryparamsquery_paramss      ./root/searxng/searx/engines/microsoft_learn.pyrequestr+   %   s    jU"$z 
5	6*%&.	6(#a'945$""L <!88F5MM    returnc                     t               }| j                         }|d   D ]E  }|j                  |j                  j	                  |d   |d   |j                  dd                   G |S )Nr   r$   titledescription )r$   r/   content)r   jsonaddtypes
MainResultget)respres	json_dataresults       r*   responser<   =   sk    
/C		II& w		$$fWoW]WaWaboqsWt$uvw Jr,   )__doc__urllib.parser   searx.result_typesr   engine_typelanguage_support
categoriespagingr%   time_range_supportr&   aboutr+   r<    r,   r*   <module>rG      se    # , V
		 6
 -"&	0m r,   