spider_main代碼
#?-*-?coding:?utf-8?-*-
import?url_manager,html_downloader,html_parser,html_outputer
class?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.html"
????obj_spider?=?SpiderMain()
????obj_spider.craw(root_url)

2018-07-19
我的也是這個(gè)問題response =request.urlopen(url)爬取到的只有頭標(biāo)簽的內(nèi)容還不完整。。
2018-07-04
這個(gè)路徑訪問失敗吧?我看現(xiàn)在百科路徑不是這個(gè)了,所以沒有新的待爬取路徑產(chǎn)生。。你改成現(xiàn)在的試試,包括爬取目標(biāo)的格式也變了