为了账号安全,请及时绑定邮箱和手机立即绑定

输出器中为什么要新建一个列表,self.datas = [] 和for data in self.datas: 为什么加一个循环

# coding:utf8
class Html0utputer(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('d:\python\output.html', 'w')

        fout.write('<html>')
        fout.write("<head><meta http-equiv='content-type' content='text/html;charset=utf-8'></head>")
        fout.write('<body>')
        fout.write('<table>')

        # ascci
        for data in self.datas:
            fout.write('<tr>')
            fout.write('<td>%s</td>' % data['url'])
            fout.write('<td>%s</td>' % data['title'].encode(encoding='UTF-8'))
            fout.write('<td>%s</td>' % data['summary'].encode(encoding='UTF-8'))
            fout.write('</tr>')

        fout.write('</table>')
        fout.write('</body>')
        fout.write('</html>')


正在回答

3 回答

data是一个对象,它有三个属性,分别是{url:xx, title:xx, summary:xx}

datas里面存放很多这样的data对象,data['xxx']是获取data元素的xxx属性


0 回复 有任何疑惑可以回复我~

self.datas = [] 

把datas定义成一个数组

collectdata是把爬到的数据依次添加到数组中

后面当然要循环按照表格式取出输出啊,为什么要用表格,当然可以不用表格的形式,你可以直接把数组转成字符串,然后文本输出,这个看个人需要~

0 回复 有任何疑惑可以回复我~
#1

qq_不二_0

这不是list吗,能用data['xxx']是怎么回事?
2016-08-16 回复 有任何疑惑可以回复我~

用来存放数据

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Python开发简单爬虫
  • 参与学习       227670    人
  • 解答问题       1219    个

本教程带您解开python爬虫这门神奇技术的面纱

进入课程

输出器中为什么要新建一个列表,self.datas = [] 和for data in self.datas: 为什么加一个循环

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信