# -*- coding: utf-8 -*- # !/usr/bin/env python import os, sys,time,datetime import urllib, urllib2, sys import requests from mongoengine import register_connection, PointField, DynamicDocument, StringField import simplejson as json import ssl import xlrd from xlrd import xldate_as_tuple from collections import OrderedDict PROJECT_ROOT = os.path.join(os.path.abspath(os.path.split(os.path.realpath(__file__))[0] + "/.."), '..') sys.path.insert(0, PROJECT_ROOT) os.environ.setdefault("DJANGO_SETTINGS_MODULE", "configs.testing") from script.base import init_env init_env(interactive = False) from apps.web.core.db import Searchable from apps.web.core.utils import generate_excel_report register_connection(alias = 'spider', name = 'spider', host = '211.159.224.10', port = 27119, username = 'service', password = 'oOzjoQcO5DyyiN97AY0NpzJ6vztjNpx5', authentication_source = 'admin') class zhiyichongSeller(Searchable): meta = { 'collection': 'zhiyichong_seller', 'db_alias': 'spider', } class zhiyichongDevice(Searchable): meta = { 'collection': 'zhiyichong_dev', 'db_alias': 'spider', } ii = 0 records = [] for rcd in zhiyichongSeller.get_collection().find({}): ii += 1 if ii % 100 == 0: print ii dataList = [ (u'联系方式', rcd['operatorPhone']), ] records.append(OrderedDict(dataList)) generate_excel_report('F:/zhiyichong_operator.xlsx', records,True) ii = 0 records = [] ownerDict = {} for rcd in zhiyichongDevice.get_collection().find({}): if rcd['mobile'] not in ownerDict: ownerDict[rcd['mobile']] = 1 else: ownerDict[rcd['mobile']] += 1 for mobile,count in ownerDict.items(): dataList = [ (u'联系方式', mobile), (u'数目', count), ] records.append(OrderedDict(dataList)) generate_excel_report('F:/zhiyichong_operator_count.xlsx', records,True) print('OK')