haokuaichongTel.py 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. # -*- coding: utf-8 -*-
  2. # !/usr/bin/env python
  3. import os, sys,time,datetime
  4. import urllib
  5. import requests
  6. from mongoengine import register_connection, PointField, DynamicDocument, StringField
  7. import simplejson as json
  8. import ssl
  9. import xlrd
  10. from xlrd import xldate_as_tuple
  11. from collections import OrderedDict
  12. PROJECT_ROOT = os.path.join(os.path.abspath(os.path.split(os.path.realpath(__file__))[0] + "/.."), '..')
  13. sys.path.insert(0, PROJECT_ROOT)
  14. os.environ.setdefault("DJANGO_SETTINGS_MODULE", "configs.testing")
  15. from script.base import init_env
  16. init_env(interactive = False)
  17. from apps.web.core.db import Searchable
  18. from apps.web.core.utils import generate_excel_report
  19. register_connection(alias = 'spider',
  20. name = 'spider',
  21. host = '211.159.224.10',
  22. port = 27119,
  23. username = 'service',
  24. password = 'oOzjoQcO5DyyiN97AY0NpzJ6vztjNpx5',
  25. authentication_source = 'admin')
  26. class Goverment(Searchable):
  27. province = StringField(default = "")
  28. city = StringField(default = "")
  29. name = StringField(default = '')
  30. lat = StringField(default = '')
  31. lng = StringField(default = '')
  32. meta = {
  33. 'collection': 'Goverment',
  34. 'db_alias': 'spider',
  35. 'unique_together': {'lat', 'lng'}
  36. }
  37. class haokuaichongDevice(Searchable):
  38. meta = {
  39. 'collection': 'haokuaichong_device',
  40. 'db_alias': 'spider',
  41. }
  42. class haokuaichongOtherDevice(Searchable):
  43. meta = {
  44. 'collection': 'haokuaichong_other_device',
  45. 'db_alias': 'spider',
  46. }
  47. ownerDict = {}
  48. for dev in haokuaichongDevice.get_collection().find():
  49. if dev['phone'] in ownerDict:
  50. ownerDict[dev['phone']] += 1
  51. else:
  52. ownerDict[dev['phone']] = 1
  53. records = []
  54. for mobile,count in ownerDict.items():
  55. dataList = [
  56. (u'联系', mobile),
  57. (u'数量', count),
  58. ]
  59. records.append(OrderedDict(dataList))
  60. generate_excel_report('F:/haokuaichong1.xlsx', records,True)
  61. print('OK')