(self, webretrievedelay, proxy, targetlist, sourcelist,
                          useragent, botoutputrequested, refreshremotexml, versionlocation)
Builds site objects representative of each site listed in the xml
        config file. Appends a Site object or one of it's subordinate objects
        to the _sites instance variable so retrieved information can be used.
        Returns nothing.

        Argument(s):
        webretrievedelay -- The amount of seconds to wait between site retrieve
        calls. Default delay is 2 seconds.
        proxy -- proxy server address as server:port_number
        targetlist -- list of strings representing targets to be investigated.
        Targets can be IP Addresses, MD5 hashes, or hostnames.
        sourcelist -- list of strings representing a specific site that should only be used
        for investigation purposes instead of all sites listed in the xml
        config file.
        useragent -- String representing user-agent that will be utilized when
        requesting or submitting data to or from a web site.
        botoutputrequested -- true or false representing if a minimalized output
        will be required for the site.
        refreshremotexml -- true or false representing if Automater will refresh 
        the tekdefense.xml file on each run.

        Return value(s):
        Nothing is returned from this Method.

        Restriction(s):
        The Method has no restrictions.
Builds site objects representative of each site listed in the xml
        config file. Appends a Site object or one of it's subordinate objects
        to the _sites instance variable so retrieved information can be used.
        Returns nothing.
Builds site objects representative of each site listed in the xml config file . Appends a Site object or one of it s subordinate objects to the _sites instance variable so retrieved information can be used . Returns nothing .
def runSiteAutomation(self, webretrievedelay, proxy, targetlist, sourcelist,
                          useragent, botoutputrequested, refreshremotexml, versionlocation):
        """
        Builds site objects representative of each site listed in the xml
        config file. Appends a Site object or one of it's subordinate objects
        to the _sites instance variable so retrieved information can be used.
        Returns nothing.

        Argument(s):
        webretrievedelay -- The amount of seconds to wait between site retrieve
        calls. Default delay is 2 seconds.
        proxy -- proxy server address as server:port_number
        targetlist -- list of strings representing targets to be investigated.
        Targets can be IP Addresses, MD5 hashes, or hostnames.
        sourcelist -- list of strings representing a specific site that should only be used
        for investigation purposes instead of all sites listed in the xml
        config file.
        useragent -- String representing user-agent that will be utilized when
        requesting or submitting data to or from a web site.
        botoutputrequested -- true or false representing if a minimalized output
        will be required for the site.
        refreshremotexml -- true or false representing if Automater will refresh 
        the tekdefense.xml file on each run.

        Return value(s):
        Nothing is returned from this Method.

        Restriction(s):
        The Method has no restrictions.
        """
        if refreshremotexml:
            SitesFile.updateTekDefenseXMLTree(proxy, self._verbose)

        remotesitetree = SitesFile.getXMLTree(__TEKDEFENSEXML__, self._verbose)
        localsitetree = SitesFile.getXMLTree(__SITESXML__, self._verbose)

        if not localsitetree and not remotesitetree:
            print 'Unfortunately there is neither a {tekd} file nor a {sites} file that can be utilized for proper' \
                  ' parsing.\nAt least one configuration XML file must be available for Automater to work properly.\n' \
                  'Please see {url} for further instructions.'\
                .format(tekd=__TEKDEFENSEXML__, sites=__SITESXML__, url=versionlocation)
        else:
            if localsitetree:
                for siteelement in localsitetree.iter(tag="site"):
                    if self.siteEntryIsValid(siteelement):
                        for targ in targetlist:
                            for source in sourcelist:
                                sitetypematch, targettype, target = self.getSiteInfoIfSiteTypesMatch(source, targ,
                                                                                                     siteelement)
                                if sitetypematch:
                                    self.buildSiteList(siteelement, webretrievedelay, proxy, targettype, target,
                                                       useragent, botoutputrequested)
                    else:
                        print 'A problem was found in the {sites} file. There appears to be a site entry with ' \
                              'unequal numbers of regexs and reporting requirements'.format(sites=__SITESXML__)
            if remotesitetree:
                for siteelement in remotesitetree.iter(tag="site"):
                    if self.siteEntryIsValid(siteelement):
                        for targ in targetlist:
                            for source in sourcelist:
                                sitetypematch, targettype, target = self.getSiteInfoIfSiteTypesMatch(source, targ,
                                                                                                     siteelement)
                                if sitetypematch:
                                    self.buildSiteList(siteelement, webretrievedelay, proxy, targettype, target,
                                                       useragent, botoutputrequested)
                    else:
                        print 'A problem was found in the {sites} file. There appears to be a site entry with ' \
                              'unequal numbers of regexs and reporting requirements'.format(sites=__SITESXML__)
def runSiteAutomation ( self , webretrievedelay , proxy , targetlist , sourcelist , useragent , botoutputrequested , refreshremotexml , versionlocation ) : if refreshremotexml : SitesFile . updateTekDefenseXMLTree ( proxy , self . _verbose ) remotesitetree = SitesFile . getXMLTree ( __TEKDEFENSEXML__ , self . _verbose ) localsitetree = SitesFile . getXMLTree ( __SITESXML__ , self . _verbose ) if not localsitetree and not remotesitetree : print 'Unfortunately there is neither a {tekd} file nor a {sites} file that can be utilized for proper' ' parsing.\nAt least one configuration XML file must be available for Automater to work properly.\n' 'Please see {url} for further instructions.' . format ( tekd = __TEKDEFENSEXML__ , sites = __SITESXML__ , url = versionlocation ) else : if localsitetree : for siteelement in localsitetree . iter ( tag = "site" ) : if self . siteEntryIsValid ( siteelement ) : for targ in targetlist : for source in sourcelist : sitetypematch , targettype , target = self . getSiteInfoIfSiteTypesMatch ( source , targ , siteelement ) if sitetypematch : self . buildSiteList ( siteelement , webretrievedelay , proxy , targettype , target , useragent , botoutputrequested ) else : print 'A problem was found in the {sites} file. There appears to be a site entry with ' 'unequal numbers of regexs and reporting requirements' . format ( sites = __SITESXML__ ) if remotesitetree : for siteelement in remotesitetree . iter ( tag = "site" ) : if self . siteEntryIsValid ( siteelement ) : for targ in targetlist : for source in sourcelist : sitetypematch , targettype , target = self . getSiteInfoIfSiteTypesMatch ( source , targ , siteelement ) if sitetypematch : self . buildSiteList ( siteelement , webretrievedelay , proxy , targettype , target , useragent , botoutputrequested ) else : print 'A problem was found in the {sites} file. There appears to be a site entry with ' 'unequal numbers of regexs and reporting requirements' . format ( sites = __SITESXML__ )