Skip to content

Commit 0e90a23

Browse files
author
Miguel Yanez
committed
Refactored code for better naming
1 parent b96930d commit 0e90a23

File tree

2 files changed

+13
-27
lines changed

2 files changed

+13
-27
lines changed

itascraper.py

Lines changed: 7 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -58,11 +58,6 @@ def set_return_date(date):
5858
RETURN_DATE = date
5959
return date
6060

61-
def search_flights():
62-
print "Finding flights...%s to %s...%s / %s" % (ORIGIN, DEST, DEPART_DATE, RETURN_DATE)
63-
return build_solutions()
64-
65-
6661
def build_solutions():
6762
"""Returns a list of Solutions"""
6863

@@ -72,8 +67,10 @@ def build_solutions():
7267

7368
dep_date_obj = datetime.datetime.strptime(DEPART_DATE, '%Y-%m-%d')
7469
return_date_obj = datetime.datetime.strptime(RETURN_DATE,'%Y-%m-%d')
75-
solution_query = SolutionQuery(engine=ENGINE, origin=ORIGIN, destination=DEST, depart_date=dep_date_obj, return_date=return_date_obj)
70+
min_price = j['result']['solutionList']['minPrice']
7671

72+
solution = Solution(engine=ENGINE, origin=ORIGIN, destination=DEST, depart_date=dep_date_obj, return_date=return_date_obj)
73+
solution.min_price = min_price
7774
for sol in j['result']['solutionList']['solutions']:
7875

7976
origin_flight_airline = sol['itinerary']['slices'][0]['flights'][0][:2]
@@ -96,21 +93,8 @@ def build_solutions():
9693

9794
flight_list = [origin_flight, return_flight]
9895
price = sol['displayTotal']
99-
solution = Solution(flights=flight_list, price=price)
100-
solution_query.solutions.append(solution)
101-
102-
solution_query.save()
103-
return solution_query
104-
105-
def show_graph(solutions, filename):
106-
prices = list()
107-
for s in solutions:
108-
prices.append(float(s.price[3:]))
109-
110-
G = GChart('lc', prices, chds='a')
111-
G.size(500,500)
112-
G.save(filename)
96+
itinerary = Itinerary(flights=flight_list, price=price)
97+
solution.itineraries.append(itinerary)
11398

114-
if __name__ == '__main__':
115-
connectDB()
116-
flights = build_solutions()
99+
solution.save()
100+
return solution

scraper_engine.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
import itascraper
2-
from mongoengine import *
32
import datetime
43
import urllib
54

5+
from mongoengine import *
6+
67
class Flight(EmbeddedDocument):
78
airline = StringField()
89
fno = IntField()
@@ -22,19 +23,20 @@ def seat_map(self):
2223
return url
2324

2425

25-
class Solution(EmbeddedDocument):
26+
class Itinerary(EmbeddedDocument):
2627
flights = ListField(EmbeddedDocumentField(Flight))
2728
price = StringField()
2829

2930
def set_stop(conn_flight):
3031
return None
3132

3233

33-
class SolutionQuery(Document):
34+
class Solution(Document):
3435
query_date = DateTimeField(default=datetime.datetime.utcnow(), required=True)
3536
engine = StringField(required=True)
3637
origin = StringField(max_length=100, required=True)
3738
depart_date = DateTimeField()
3839
destination = StringField(max_length=100, required=True)
3940
return_date = DateTimeField()
40-
solutions = ListField(EmbeddedDocumentField(Solution))
41+
min_price = StringField(required=False)
42+
itineraries = ListField(EmbeddedDocumentField(Itinerary))

0 commit comments

Comments
 (0)