• python 操作表格


    1.常见表格的读操作
    #coding=utf-8 import xlrd import os import re import sys import time import datetime import requests import chardet import traceback import csv import warnings warnings.filterwarnings("ignore") reload(sys) sys.setdefaultencoding('utf-8') def print_xls(path): data=xlrd.open_workbook(path) #打开excel table=data.sheets()[0] #打开excel的第几个sheet nrows=table.nrows #捕获到有效数据的行数 print nrows books=[] for i in range(nrows): ss=table.row_values(i) #获取一行的所有值,每一列的值以列表项存在 url = ss[0] # for i in range(len(ss)): # print ss[i] #输出一行中各个列的值 # print '+++++++++++++++++++' print url pass def read_csv(path): file = open(path) reader = csv.reader(file) for line in reader: site = '' for row in line[0:1]: site = site + row.decode('utf-8') pass for row in line[3:]: site = site + row.decode('utf-8') pass print site pass if __name__ == '__main__': db_client = MongoClient('192.168.86.136',27017) read_csv(u'黄山市学校数据.csv')
    print_xls(u'黄山市学校数据.xls')
    db_client.close()

    2.xls表格写操作
    #coding=utf-8
    import os
    import re
    import time
    import requests
    import json
    from pymongo import MongoClient
    import traceback
    import urlparse
    import urllib
    import urllib2
    import hashlib
    import chardet
    import random
    import xlwt
    
    import sys
    reload(sys)
    sys.setdefaultencoding("utf-8")
    
    #导出数据
    def export_mongo_data():
        file = xlwt.Workbook(encoding = 'utf-8')
        sheet_name = u'name'
        round = 1
        while True:
            result = db_client.xxxxxx.xxx.find({'xxx':{'$exists':False}}).limit(2000)
            if round > 1:
                sheet_name_temp = sheet_name + str(round)
            else:
                sheet_name_temp = sheet_name
            if result.count():
                table = file.add_sheet(sheet_name_temp)
                table.write(0,0,u'id')
                table.write(0,1,u'url')
                table.write(0,2,u'name')
                row_index = 1
                for curr_res in result:
                    url = curr_res['url']
                    if url:
                        try:
                            _id = curr_res['_id']
                            zzz = curr_res['zzz']
                            paper_name = zzz + _id + ".html"
                            #print paper_name
                            table.write(row_index,0,curr_res['_id'])
                            table.write(row_index,1,curr_res['url'])
                            table.write(row_index,2,paper_name)                
                            db_client.xxx.xxx.update({'_id':curr_res['_id']},{'$set':{'xxx':True}})
                            print curr_res['_id']
                        except Exception as e:
                            db_client.crawler_zuowen.gaosanW_byzhinengyuejuan.update({'_id':curr_res['_id']},{'$set':{'xxx':False}})
                            continue
                        row_index += 1
                    else:
                        db_client.crawler_zuowen.gaosanW_byzhinengyuejuan.update({'_id':curr_res['_id']},{'$set':{'zzz':False}})
                round += 1
            else:
                break
        file.save(u'name.xls')
    
    if __name__ == '__main__':
        db_client = MongoClient('xxx.xxx.xx.xxxx',27017)
        export_mongo_data()
        db_client.close()
    
    
    
     
  • 相关阅读:
    文本替换
    国际时间转化为北京时间
    nginx 白名单
    System.Web.HttpException 超过了最大请求长度。
    nginx 优化
    nginx 502 504
    nginx 配置文件相关参数
    nginx location指令 正则表达式
    子网下连接路由器配置
    Java初学者
  • 原文地址:https://www.cnblogs.com/zhaobang/p/7259995.html
Copyright © 2020-2023  润新知