3
@6^                 @   s   d dl Z d dlmZmZmZ eedgedddgeddd	ged
ddgedddgedddgedddgedddgeddgd	ZG dd deZdS )    N)
SpiderFootSpiderFootPluginSpiderFootEventZjqueryz\/yui\/zyui\-zyui\.z\/prototype\/zprototype\-zprototype\.jsz\/foundation\/zfoundation\-zfoundation\.jsz\/bootstrap\/zbootstrap\-zbootstrap\.jsz['"\=]ext\.jsZextjsz\/ext\/*\.jsz\/mootools\/z
mootools\-zmootools\.jsz\/dojo\/z['"\=]dojo\-z['"\=]dojo\.jsz\/wp-includes\/z\/wp-content\/)	ZjQueryZYUIZ	PrototypezZURB FoundationZ	BootstrapZExtJSZMootoolsZDojoZ	Wordpressc               @   sB   e Zd ZdZi Zi ZdZe fddZdd Z	dd Z
d	d
 ZdS )sfp_webframeworkz{Web Framework:Footprint,Passive:Content Analysis::Identify the usage of popular web frameworks like jQuery, YUI and others.Nc             C   s>   || _ | j | _d| _x"t|j D ]}|| | j|< q$W d S )NzTarget Website)sftempStorageresults__dataSource__listkeysopts)selfsfcuserOptsopt r   ;/var/www/spiderfoot.crq.systems/modules/sfp_webframework.pysetup-   s
    
zsfp_webframework.setupc             C   s   dgS )NTARGET_WEB_CONTENTr   )r   r   r   r   watchedEvents7   s    zsfp_webframework.watchedEventsc             C   s   dgS )NURL_WEB_FRAMEWORKr   )r   r   r   r   producedEvents=   s    zsfp_webframework.producedEventsc             C   s0  |j }|j}|j}|j}|dkr$d S | jjd| d |  || jkrRt | j|< | j j	| jj
|sx| jjd d S xttj D ]}|| j| krqxt| D ]}tj|tj}tj||}	t|	dko|| j| kr| jjd| d |  | j| |g | j|< td|| j|}
| j|
 qW qW d S )	NZ
sfp_spiderzReceived event, z, from z:Not collecting web content information for external sites.r   zMatched z in content from r   )	eventTypemoduledataactualSourcer   debugr   r
   	getTargetmatchesurlFQDNregexpsr   recompile
IGNORECASEfindallleninfor   __name__notifyListeners)r   event	eventNamesrcModuleName	eventDataZeventSourceZ	regexpGrpregexpatr   evtr   r   r   handleEventA   s2    

zsfp_webframework.handleEvent)r'   
__module____qualname____doc__r   optdescsr   dictr   r   r   r0   r   r   r   r   r      s   
r   )	r!   sflibr   r   r   r5   r
   r    r   r   r   r   r   <module>   s   