第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

照老師的寫的代碼,但是運行沒有結果

照老師的寫的代碼,但是運行沒有結果

qq_魚面曉曉_03572666 2016-07-01 15:31:59
我的代碼:spide_main頁面from baike_spider import url_manager, html_downloader, html_parser,\? ? html_outputerclass SpiderMain(object):? ? def __init__(self):? ? ? ? self.urls=url_manager.UrlManager()? ? ? ? self.downloader=html_downloader.HtmlDownloader()? ? ? ? self.parser=html_parser.HtmlParser()? ? ? ? self.outputer=html_outputer.HtmlOutputer()? ? ? ??? ??? ? def craw(self, root_url):? ? ? ? count=1? ? ? ? self.urls.add_new_url(root_url)? ? ? ? while self.urls.has_new_url():? ? ? ? ? ? try:? ? ? ? ? ? ? ? new_url=self.urls.get_new_url()? ? ? ? ? ? ? ? print 'craw %d : %s' % (count,new_url)? ? ? ? ? ? ? ? html_cont=self.downloader.download(new_url)? ? ? ? ? ? ? ? new_urls,new_data=self.parser.parse(new_url,html_cont)? ? ? ? ? ? ? ? self.urls.add_new_urls(new_urls)? ? ? ? ? ? ? ? self.outputer.collect_data(new_data)? ? ? ? ? ? ? ??? ? ? ? ? ? ? ? if count==1000:? ? ? ? ? ? ? ? ? ? break? ? ? ? ? ? ? ? count=count+1? ? ? ? ? ? except:? ? ? ? ? ? ? ? print 'craw failed'?? ? ? ? self.outputer.output_html()if __name__=="_main_":? ? root_url="http://baike.baidu.com/view/21087.htm"? ? obj_spider=SpiderMain()? ? obj_spider.craw(root_url)url_manager頁面class UrlManager(object):? ? def __init__(self):? ? ? ? self.new_urls = set()? ? ? ? self.old_urls = set()? ??? ? def add_new_url(self,url):? ? ? ? if url is None:? ? ? ? ? ? return? ? ? ? if url not in self.new_urls and url not in self.old_urls:? ? ? ? ? ? self.new_urls.add(url)? ? ??? ? def add_new_urls(self,urls):? ? ? ? if urls is None or len(urls) == 0:? ? ? ? ? ? return? ? ? ? for url in urls:? ? ? ? ? ? self.add_new_url(url)? ? ??? ? def has_new_url(self):? ? ? ? return len(self.new_urls) != 0? ?? ? def get_new_url(self):? ? ? ? new_url=self.new_urls.pop()? ? ? ? self.old_urls.add(new_url)? ? ? ? return new_urlhtml_downloader頁面import urllib2class HtmlDownloader(object):? ??? ??? ? def download(self,url):? ? ? ? if url is None:? ? ? ? ? ? return None? ? ? ??? ? ? ? response = urllib2.urlopen(url)? ? ? ??? ? ? ? if response.getcode() != 200:? ? ? ? ? ? return None? ? ? ??? ? ? ? return response.read()?html_parser頁面import urllib2class HtmlDownloader(object):? ? def download(self,url):? ? ? ? if url is None:? ? ? ? ? ? return None? ?? ? ? ? response = urllib2.urlopen(url)? ? ? ? if response.getcode() != 200:? ? ? ? ? ? return None? ? ? ? return response.read()html_outputer頁面class HtmlOutputer(object):? ? def __init__(self):? ? ? ? self.datas = []? ??? ? def collect_data(self,data):? ? ? ? if data is None:? ? ? ? ? ? return? ? ? ? self.datas.append(data)? ??? ? def output_html(self):? ? ? ? fout=open('output.html','w')? ? ? ? fout.write("<html>")? ? ? ? fout.write("<body>")? ? ? ? fout.write("<table>")? ? ? ? #ascii? ? ? ? for data in self.datas:? ? ? ? ? ? fout.write("<tr>")? ? ? ? ? ? fout.write("<td>%s</td>" % data['url'])?? ? ? ? ? ? fout.write("<td>%s</td>" % data['title'].encode('utf-8'))?? ? ? ? ? ? fout.write("<td>%s</td>" % data['summary'].encode('utf-8'))?? ? ? ? ? ? fout.write("</tr>")? ? ? ? fout.write("</table>")? ? ? ? fout.write("</body>")? ? ? ? fout.write("</html>")? ? ? ? fout.close()? ? ? ? 運行后沒有反應,? ? ? ??? ??? ??
查看完整描述

1 回答

?
Chace_Shadow

TA貢獻2條經(jīng)驗 獲得超0個贊

運行后打開output.html才能看到結果啊

查看完整回答
反對 回復 2016-07-04
點擊展開后面7
  • 1 回答
  • 0 關注
  • 1677 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號