zhiyichong.py 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  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. from django.db.models.fields import DateTimeField
  9. PROJECT_ROOT = os.path.join(os.path.abspath(os.path.split(os.path.realpath(__file__))[0] + "/.."), '..')
  10. sys.path.insert(0, PROJECT_ROOT)
  11. os.environ.setdefault("DJANGO_SETTINGS_MODULE", "configs.testing")
  12. from script.base import init_env
  13. init_env(interactive = False)
  14. from apps.web.core.db import Searchable
  15. register_connection(alias = 'spider',
  16. name = 'spider',
  17. host = '211.159.224.10',
  18. port = 27119,
  19. username = 'service',
  20. password = 'oOzjoQcO5DyyiN97AY0NpzJ6vztjNpx5',
  21. authentication_source = 'admin')
  22. class zhiyichongSeller(Searchable):
  23. meta = {
  24. 'collection': 'zhiyichong_seller',
  25. 'db_alias': 'spider',
  26. }
  27. # 根据二维码编号,获取设备更详细的信息
  28. logicalFormat1 = 'XC%04d'
  29. logicalFormat2 = 'XC%05d'
  30. url1 = 'https://wx.isfdz.com/users/getInfo?id=1703433&srcId=200&sellerId=%s'
  31. # cookie1 = 'PHPSESSID=289df6867a76371820780cdbedce0397; PHPSESSID=289df6867a76371820780cdbedce0397; acw_tc=76b20ff916492062843861607e6040a09702c48cd1884b1201c1389a7b9c14'
  32. agent = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36 NetType/WIFI MicroMessenger/7.0.20.1781(0x6700143B) WindowsWechat(0x63060012)'
  33. #36000-80000
  34. newCount = 0
  35. ii = 0
  36. for ii in range(3000):
  37. try:
  38. url = url1 % ii
  39. response = requests.get(url)
  40. devDict = json.loads(response.text)
  41. if 'operatorPhone' not in devDict['data']:
  42. print 'over -----------------------'
  43. continue
  44. zhiyichongSeller.get_collection().update({'operatorPhone':devDict['data']['operatorPhone']},{'$set':devDict['data']},upsert = True)
  45. print ii
  46. except Exception,e:
  47. print '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!',e
  48. continue
  49. print('OK')