@@ -373,6 +373,7 @@ def consumer_info_api(request): |
||
373 | 373 |
'brand_id': log.brand_id, |
374 | 374 |
'lat': log.lat, |
375 | 375 |
'lon': log.lon, |
376 |
+ 'phone': log.phone, |
|
376 | 377 |
'ymd': ymd, |
377 | 378 |
}) |
378 | 379 |
|
@@ -1,5 +1,6 @@ |
||
1 | 1 |
# -*- coding: utf-8 -*- |
2 | 2 |
|
3 |
+import json |
|
3 | 4 |
import logging |
4 | 5 |
|
5 | 6 |
import requests |
@@ -26,6 +27,7 @@ class Command(CompatibilityBaseCommand): |
||
26 | 27 |
# 'brand_id': 'brand_id', |
27 | 28 |
# 'lat': .0, |
28 | 29 |
# 'lon': .0, |
30 |
+ # 'phone': '18888888888', |
|
29 | 31 |
# 'ymd': '20121212', |
30 | 32 |
# }) |
31 | 33 |
k, v = r.blpopjson(MINI_PROGRAM_GIS_LIST, 60) |
@@ -50,6 +52,20 @@ class Command(CompatibilityBaseCommand): |
||
50 | 52 |
|
51 | 53 |
province_code = ProvinceModelMixin.PROVINCE_NAME_CODE_DICT.get(zh1) |
52 | 54 |
|
55 |
+ # 手机归属地 |
|
56 |
+ if not province_code: |
|
57 |
+ try: |
|
58 |
+ phoneinfo = requests.get(settings.PHONE_2_ADMINISTRATIVE_DIVISION.format(v.get('phone', 0))) |
|
59 |
+ except Exception as e: |
|
60 |
+ logger.info(e.message) |
|
61 |
+ continue |
|
62 |
+ try: |
|
63 |
+ province_name = json.loads(phoneinfo.content.split('(')[-1][:-1])['data']['area'] |
|
64 |
+ except Exception as e: |
|
65 |
+ logger.info(e.message) |
|
66 |
+ continue |
|
67 |
+ province_code = ProvinceShortModelMixin.PROVINCE_NAME_CODE_DICT.get(province_name) |
|
68 |
+ |
|
53 | 69 |
if not province_code: |
54 | 70 |
continue |
55 | 71 |
|
@@ -393,6 +393,7 @@ KODO_CLERK_AUTH_URL = 'http://pai.ai/w/o?r=http%3A%2F%2Fkodo.xfoto.com.cn%2Fp%2F |
||
393 | 393 |
|
394 | 394 |
# 经纬度 |
395 | 395 |
GIS_2_ADMINISTRATIVE_DIVISION = 'http://116.196.105.215:1234/gis?auth_user=freevip&latitude={0}&longitude={1}' |
396 |
+PHONE_2_ADMINISTRATIVE_DIVISION = 'https://www.baifubao.com/callback?cmd=1059&callback=phone&phone={0}' |
|
396 | 397 |
|
397 | 398 |
try: |
398 | 399 |
from local_settings import * |
@@ -288,5 +288,6 @@ def refreshs(): |
||
288 | 288 |
'brand_id': log.brand_id, |
289 | 289 |
'lat': log.lat, |
290 | 290 |
'lon': log.lon, |
291 |
+ 'phone': log.phone, |
|
291 | 292 |
'ymd': tc.local_string(tc.to_local_datetime(log.created_at), format='%Y%m%d'), |
292 | 293 |
}) |