爬虫遇见乱码和抓取数量不定
大概遇到了两个问题:1、每次运行能够抓取的记录数量不定,有时候几十条,有时候可以抓到几百条,但是没有一次抓满了1000条的,系统运行也不报错,也会生成相应的html文件,请问这种情况是什么回事啊,有没有高手解答下;2、生成的html的中文是乱码,我特意在控制台把抓取的title和summary都打印了出来,是正常的,但是生成的html就是乱码,求指教啊
大概遇到了两个问题:1、每次运行能够抓取的记录数量不定,有时候几十条,有时候可以抓到几百条,但是没有一次抓满了1000条的,系统运行也不报错,也会生成相应的html文件,请问这种情况是什么回事啊,有没有高手解答下;2、生成的html的中文是乱码,我特意在控制台把抓取的title和summary都打印了出来,是正常的,但是生成的html就是乱码,求指教啊
2016-07-14
1.是因为网络
2.还是编码问题python3的话可以试试这个在html_outputer里修改如下:
#coding utf-8
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', encoding='utf-8')
fout.write("<html><meta charset=\"utf-8\" />")
fout.write("<body>")
fout.write("<table>")
for data in self.datas:
fout.write("<tr>")
fout.write("<td>%s</td>" % data['url'])
fout.write("<td>%s</td>" % data['title'])
fout.write("<td>%s</td>" % data['summary'])
fout.write("</tr>")
fout.write("</table>")
fout.write("</body>")
fout.write("</html>")
fout.close()
举报