初学python,爬虫开刀

来源:互联网 发布:有道网络已断开 编辑:程序博客网 时间:2024/04/28 05:40

拉勾网-北京python薪水数据

#-*- coding:utf-8 -*-import urllibimport jsonimport csvimport codecscsvfile = file('pythonSalary.csv', 'wb')csvfile.write(codecs.BOM_UTF8)writer = csv.writer(csvfile)for i in range(1,100):    response = urllib.urlopen("http://www.lagou.com/jobs/positionAjax.json?city=%E5%85%A8%E5%9B%BD&kd=python&pn="+str(i))    html = response.read()    decoded = json.loads(html)    result = decoded["content"]["result"]    htmlDumps = json.dumps(result, sort_keys=True)    resultDump = json.loads(htmlDumps)    if i==1:        writer.writerow(resultDump[0].keys())    for j in range(0,len(resultDump)):        writer.writerow(resultDump[j].values())csvfile.close()

数据暂时保存到csv中

其中遇到的问题

  1. 编码问题 UnicodeEncodeError: ‘ascii’ codec can’t encode character u’\u6211’ 。解决方法为:在python安装目录下的lib\site-packages文件夹下新建一个sitecustomize.py,文件中的代码为:
import sys  sys.setdefaultencoding('utf-8')  

2 文件写入后乱码问题
解决方法如下csvfile.write(codecs.BOM_UTF8)

0 0
原创粉丝点击