le.py 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. # -*- coding: utf-8 -*-
  2. #!/usr/bin/env python
  3. from collections import OrderedDict
  4. import requests
  5. import simplejson as json
  6. from mongoengine import DynamicDocument, StringField, DictField
  7. class User(DynamicDocument):
  8. equipmentId = StringField(unique = True)
  9. distributorId = StringField(verbose_name = '')
  10. serviceNumber = StringField(verbose_name = '')
  11. businessName = StringField(verbose_name = '')
  12. result = DictField(verbose_name = '')
  13. meta = {'collection': 'le_user', 'db_alias': 'default'}
  14. import sys
  15. begin = int(sys.argv[1])
  16. end = int(sys.argv[2])
  17. records = []
  18. for itemid in range(begin, end + 1):
  19. try:
  20. equipmentId = str(itemid)
  21. url = 'https://m.leyaoyao.com/customer/group/customerService/info?equipmentId={}'.format(equipmentId)
  22. strhtml = requests.get(url, timeout = 15)
  23. result = json.loads(strhtml.text)
  24. print '{} - {}'.format(equipmentId, result)
  25. if 'data' not in result or not result['data']:
  26. continue
  27. else:
  28. data = result['data']
  29. distributor_id = data.get('lyyDistributorId', '')
  30. service_number = data.get('customerServiceNumber', '')
  31. business_name = data.get('businessName', '')
  32. if service_number and service_number != '400-807-3833' and business_name != u'乐摇摇':
  33. records.append(
  34. OrderedDict([
  35. (u'设备编号', equipmentId),
  36. (u'服务电话', service_number),
  37. (u'区域ID', distributor_id),
  38. (u'businessName', business_name)
  39. ]))
  40. except Exception, e:
  41. print str(e)
  42. import pandas as pd
  43. df = pd.DataFrame(records)
  44. df.to_excel('/var/lyy/{}_{}.xlsx'.format(begin, end), sheet_name='sheet1', index=False)