Esempio n. 1
0
    def saveresult(self):
        '''
        :对获取到的网站连接处理并将结果保存到文件
        '''
        if ggv.pterminate:return None
        self.window.gauge.Hide()
        self.window.SetStatusText(u'3/4暂存网站广度遍历结果!',1)
        du = DealUrl()
        ofile = open(self.outfile,'w+')
        urls = []
        while True:                                         #搜索引擎返回的结果,使之保存到列表中
            if self.outqueue.empty():break
            url = self.outqueue.get()
            if url not in self.webknown:                    #排除已经存在的网站
                logging.info('url:%s'%url)
                urls.append(url)
#             self.queue.task_done()
#         print 'urls:',urls
        urls = set(urls)
        if ggv.pterminate:return None
        urldict = du.dealUrl(urls)                          #分别返回链接的域名、子域名、子目录、二级目录、收集到的网页数量
        self.window.SetStatusText(u'共有%d个网站'%len(urls),2)
        for domain in urldict:
            urlitem = domain + '\t' + '\t'.join(urldict[domain][:-1]) + '\t' + str(urldict[domain][-1])
            ofile.write(urlitem + '\r\n')
        ofile.close()
        self.window.SetStatusText(u'3/4保存结果完毕!',1)
    def saveResult(self):
        '''
        :保存搜索返回结果的后处理结果
        :功能:处理返回的链接依次剥离域名、子域名、二级目录,将处理结果保存到文档
        '''
        if ggv.pterminate:return None
        self.window.SetStatusText(u'1/4暂存搜索引擎结果!',1)
        du = DealUrl()
        ofile = open(self.TEMPFILE,'w+')
        urls = []
        while True:                                         #搜索引擎返回的结果,使之保存到列表中
            if self.inqueue.empty():break
            urls.append(self.inqueue.get())
#             self.queue.task_done()
        urls = set(urls)
        urldict = du.dealUrl(urls)                          #分别返回链接的域名、子域名、子目录、二级目录、收集到的网页数量
        self.window.SetStatusText(u'共有%d个网站'%len(urls),2)
        for domain in urldict:
            urlitem = domain + '\t' + '\t'.join(urldict[domain][:-1]) + '\t' + str(urldict[domain][-1])
            ofile.write(urlitem + '\r\n')
        ofile.close()
        self.window.SetStatusText(u'1/4保存结果完毕!',1)
        
    def saveResult(self):
        '''
        :保存搜索返回结果的后处理结果
        :功能:处理返回的链接依次剥离域名、子域名、二级目录,将处理结果保存到文档
        '''
        if ggv.pterminate: return None
        self.window.SetStatusText(u'1/4暂存搜索引擎结果!', 1)
        du = DealUrl()
        ofile = open(self.TEMPFILE, 'w+')
        urls = []
        while True:  #搜索引擎返回的结果,使之保存到列表中
            if self.inqueue.empty(): break
            urls.append(self.inqueue.get())
#             self.queue.task_done()
        urls = set(urls)
        urldict = du.dealUrl(urls)  #分别返回链接的域名、子域名、子目录、二级目录、收集到的网页数量
        self.window.SetStatusText(u'共有%d个网站' % len(urls), 2)
        for domain in urldict:
            urlitem = domain + '\t' + '\t'.join(
                urldict[domain][:-1]) + '\t' + str(urldict[domain][-1])
            ofile.write(urlitem + '\r\n')
        ofile.close()
        self.window.SetStatusText(u'1/4保存结果完毕!', 1)