o
    ÎÇh‘
  ã                   @   sä   d dl Z d dlmZ d dlZddd„ZedkrndZeeƒZe	de› d	�ƒ e
eƒD ]F\ZZd
ev r=e	ded
 › �ƒ  dS dev rJe	ed ƒ  dS e	ed › ded › �ƒ e	ded › �ƒ e	ded › �ƒ e	dƒ q)dS dS )é    N)ÚBeautifulSoupé   c              
   C   s‚  g }zot j | ¡}d|› d�}ddi}tj||d�}| ¡  t|jdƒ}|jd|d�}|D ]B}	|	 	d	¡}
|	j	d
dd�}|	 	dddi¡}|
rH|
jnd}|rP|d nd}| 
d¡r_d|dd…  }|rd|jnd}| |||dœ¡ q-W nC tjjy” } ztd|› �ƒ dd|› �igW  Y d}~S d}~w ty´ } ztd|› �ƒ dd|› �igW  Y d}~S d}~ww |s¿dd| › �igS |S ) z:Fetches news articles related to a query from Google News.z!https://news.google.com/search?q=z&hl=en-US&gl=US&ceid=US:enz
User-AgentzsMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36)Úheaderszhtml.parserÚarticle)ÚlimitÚh3ÚaT)ÚhrefÚdivÚclassZSVJrMezNo Titler	   ú#z./zhttps://news.google.comé   Nz	No Source)ÚtitleÚlinkÚsourcezError fetching news: ÚerrorzHTTP Error: zError parsing news: zParsing Error: ÚmessagezNo news found for: )ÚurllibÚparseÚ
quote_plusÚrequestsÚgetÚraise_for_statusr   ÚtextÚfind_allÚfindÚ
startswithÚappendÚ
exceptionsÚRequestExceptionÚprintÚ	Exception)ÚqueryÚnum_resultsÚresultsZencoded_queryÚurlr   ÚresponseÚsoupZarticlesr   Ú	title_tagÚlink_tagZ
source_tagr   r   r   Úe© r+   ú@C:\Users\shubh\Videos\agent\agent_preprod\modules\search\news.pyÚ
fetch_news   sJ   ÿ


ýô€€þr-   Ú__main__zlatest technology trendszNews results for 'z':r   zError: r   r   z. r   z   Source: r   z	   Link: r   z---)r   )r   Úbs4r   Úurllib.parser   r-   Ú__name__Úsearch_queryZnews_resultsr    Ú	enumerateÚiÚresultr+   r+   r+   r,   Ú<module>   s*   
4
ò