| Line 10... |
Line 10... |
| 10 |
from dtr.api.Service import Orders
|
10 |
from dtr.api.Service import Orders
|
| 11 |
from dtr.dao import AffiliateInfo, Order, SubOrder
|
11 |
from dtr.dao import AffiliateInfo, Order, SubOrder
|
| 12 |
from dtr.main import getBrowserObject, ScrapeException, getStore, ParseException, \
|
12 |
from dtr.main import getBrowserObject, ScrapeException, getStore, ParseException, \
|
| 13 |
Store as MStore, ungzipResponse, tprint
|
13 |
Store as MStore, ungzipResponse, tprint
|
| 14 |
from dtr.storage import Mongo
|
14 |
from dtr.storage import Mongo
|
| - |
|
15 |
from dtr.storage.DataService import Order_Parse_Info, All_user_addresses
|
| 15 |
from dtr.storage.Mongo import getImgSrc, getDealRank
|
16 |
from dtr.storage.Mongo import getImgSrc, getDealRank
|
| 16 |
from dtr.utils import utils
|
17 |
from dtr.utils import utils
|
| 17 |
from dtr.utils.utils import fetchResponseUsingProxy
|
18 |
from dtr.utils.utils import fetchResponseUsingProxy
|
| 18 |
from elixir import *
|
19 |
from elixir import *
|
| 19 |
from pprint import pprint
|
20 |
from pprint import pprint
|
| Line 26... |
Line 27... |
| 26 |
import pymongo
|
27 |
import pymongo
|
| 27 |
import re
|
28 |
import re
|
| 28 |
import time
|
29 |
import time
|
| 29 |
import traceback
|
30 |
import traceback
|
| 30 |
import urllib
|
31 |
import urllib
|
| 31 |
from dtr.storage.DataService import Order_Parse_Info
|
- |
|
| 32 |
|
32 |
|
| 33 |
USERNAME='profittill2@gmail.com'
|
33 |
USERNAME='profittill2@gmail.com'
|
| 34 |
PASSWORD='spice@2020'
|
34 |
PASSWORD='spice@2020'
|
| 35 |
AFFILIATE_URL='http://affiliate.snapdeal.com/login/'
|
35 |
AFFILIATE_URL='http://affiliate.snapdeal.com/login/'
|
| 36 |
POST_URL='https://api-p03.hasoffers.com/v3/Affiliate_Report.json'
|
36 |
POST_URL='https://api-p03.hasoffers.com/v3/Affiliate_Report.json'
|
| Line 666... |
Line 666... |
| 666 |
# offerData['datetime'], int(float(offerData['payout'])), offer['Offer']['name'], offerData['ip'], int(float(offerData['conversion_sale_amount'])))
|
666 |
# offerData['datetime'], int(float(offerData['payout'])), offer['Offer']['name'], offerData['ip'], int(float(offerData['conversion_sale_amount'])))
|
| 667 |
# offer1.saleTime = int(time.mktime(datetime.strptime(offer1.saleDate, "%Y-%m-%d %H:%M:%S").timetuple()))
|
667 |
# offer1.saleTime = int(time.mktime(datetime.strptime(offer1.saleDate, "%Y-%m-%d %H:%M:%S").timetuple()))
|
| 668 |
# return offer1
|
668 |
# return offer1
|
| 669 |
def parseInfo(self,):
|
669 |
def parseInfo(self,):
|
| 670 |
from pyquery import PyQuery as pq
|
670 |
from pyquery import PyQuery as pq
|
| 671 |
orders = list(session.query(Orders).filter_by(store_id=self.store_id).filter_by(status='ORDER_CREATED').all())
|
671 |
orders = list(session.query(Orders).filter_by(store_id=self.store_id).filter_by(status='ORDER_CREATED').group_by(Orders.user_id).all())
|
| 672 |
try:
|
672 |
try:
|
| 673 |
for order in orders:
|
673 |
for order in orders:
|
| 674 |
try:
|
674 |
try:
|
| 675 |
doc = pq(order.rawhtml)
|
675 |
doc = pq(order.rawhtml)
|
| 676 |
a1= " ".join(["" if not div.text else div.text.replace("\t","").replace("\n","").replace(" ", "") for div in pq(doc('article')[-1])('div')])
|
676 |
a1= " ".join(["" if not div.text else div.text.replace("\t","").replace("\n","").strip() for div in pq(doc('article')[-1])('div')]).strip()
|
| 677 |
a2 = ",".join(["" if not div.text else div.text.replace("\t","").replace("\n","").replace(" ", "") for div in pq(doc('article')[-2])('div')])
|
677 |
a2 = ",".join(["" if not div.text else div.text.replace("\t","").replace("\n","").replace(" ", "") for div in pq(doc('article')[-2])('div')]).strip()
|
| 678 |
orderInfo = Order_Parse_Info()
|
678 |
user_address = All_user_addresses()
|
| 679 |
orderInfo.address = a1
|
679 |
user_address.address = a1
|
| 680 |
all = a2.split(",")
|
680 |
all = a2.split(",")
|
| 681 |
orderInfo.user_id = order.user_id
|
681 |
user_address.source = 'order'
|
| 682 |
orderInfo.order_id = order.id
|
682 |
user_address.user_id = order.user_id
|
| 683 |
orderInfo.email = all[3].split(":")[1]
|
683 |
#user_address. = all[3].split(":")[1]
|
| 684 |
orderInfo.name = all[2].split(":")[1]
|
684 |
#user_address. = all[2].split(":")[1]
|
| 685 |
orderInfo.mobile = all[-1].split(":")[1]
|
685 |
#orderInfo.mobile = all[-1].split(":")[1]
|
| 686 |
adSplit = a1.split(",")
|
686 |
adSplit = a1.split(",")
|
| 687 |
orderInfo.city = adSplit[-2].strip()
|
687 |
user_address.city = adSplit[-2].strip()
|
| 688 |
orderInfo.pin = adSplit[-1].split(" ")[0]
|
688 |
user_address.pincode = adSplit[-1].strip().split(" ")[0]
|
| 689 |
orderInfo.state = adSplit[-1].split(" ")[1]
|
689 |
user_address = adSplit[-1].strip().split(" ")[1]
|
| 690 |
session.commit()
|
690 |
session.commit()
|
| 691 |
except:
|
691 |
except:
|
| 692 |
session.rollback()
|
692 |
session.rollback()
|
| 693 |
continue
|
693 |
continue
|
| 694 |
finally:
|
694 |
finally:
|