爬虫时多种类信息写入
爬虫时,我们一般会确定我们要哪些信息然后写入文件中。但有时候遇到如下情况,我们需要的信息有a,b,c,d,e,f,g,h。这8个信息,但是在第一个页面中只有a,b,c,d这四个信息,第二个页面中有c,d,e,f,h这4个信息,但我们写入文件的时候要求是如下格式:
a | b | c | d | e | f | g | h |
a | b | c | d | ||||
c | d | e | f | h |
其他没有的种类空着。最近就遇到了这种情况,我想到了如下方法。
首先我把回去到的信息存入一个二维列表[[a,1],[b,1],[c,2],[d,4],[e,7],[f,6],[g,8]]。这是我获取到的实际信息。我会建一个空字典
dict = { 'a':' ',
'a':' ',
'b':' ',
'c':' ',
'd':' ',
'e':' ',
'f':' ',
'g':' ',
'h':' ',
}
第列表做循环去比较列表中的小列表的第一个元素是否存在于自动中,如果有则把第二个元素存放在字典中。最终得到了数据字典,再把字典的值转为列表存入文件中,代码如下
for i in range(len(infos)):
for key in ori_dict:
if infos[i][0] == key:
ori_dict[key] = infos[i][1]
ori_list = list(ori_dict.values())