File tree Expand file tree Collapse file tree 4 files changed +13
-11
lines changed
Expand file tree Collapse file tree 4 files changed +13
-11
lines changed Original file line number Diff line number Diff line change @@ -49,8 +49,8 @@ A scrapper that works as a server with open api which parse the site of the
4949 ```
5050 - examples:
5151 - `yourdomain.com/api/schedule?query=ПІ-4&type=group`
52- - `yourdomain.com/api/schedule?query=ПІ-4&type=froup &date_from=
53- 08.04 .2019&date_to=09.04.2019`
52+ - `yourdomain.com/api/schedule?query=Козленко Микола Іванович&q_type=teacher &date_from=07.05.2019`
53+ - `yourdomain.com/api/schedule?query=ПІ-4&type=group&date_from= 08.04.2019&date_to=09.04.2019`
5454 - response example:
5555 ```json
5656 {
Original file line number Diff line number Diff line change @@ -23,14 +23,16 @@ async def options(self):
2323
2424class ScheduleApiHandler (BaseHandler ):
2525 async def prepare (self ):
26- group = self .get_query_argument ('group' )
26+ query = self .get_query_argument ('query' )
27+ q_type = self .get_query_argument ('q_type' , 'group' )
2728 faculty = self .get_query_argument ('faculty' , '0' )
2829 date_from = self .get_query_argument ('date_from' , '' )
2930 date_to = self .get_query_argument ('date_to' , '' )
3031
3132 # TODO: date validation
3233
33- self ._params = dict (group = group ,
34+ self ._params = dict (query = query ,
35+ q_type = q_type ,
3436 faculty = faculty ,
3537 date_from = date_from ,
3638 date_to = date_to
@@ -39,7 +41,8 @@ async def prepare(self):
3941 async def get (self ):
4042 body = await load_schedule (** self ._params )
4143 schedule = parse_schedule (body )
42- schedule_json = serialize_schedule (group = self ._params ['group' ],
44+ schedule_json = serialize_schedule (query = self ._params ['query' ],
45+ q_type = self ._params ['q_type' ],
4346 schedule = schedule )
4447 self .set_status (200 )
4548 self .write (schedule_json )
Original file line number Diff line number Diff line change 44__all__ = ["serialize_schedule" , "serialize_list" , ]
55
66
7- def serialize_schedule (group , schedule ):
7+ def serialize_schedule (query , q_type , schedule ):
88 # Todo: provide docstring
99 to_serialize = {
10- 'group' : group ,
10+ q_type : query ,
1111 'schedule' : schedule
1212 }
1313 schedule_json = json .dumps (to_serialize , ensure_ascii = False )
Original file line number Diff line number Diff line change @@ -32,16 +32,15 @@ def prepare_post_data(**kwargs):
3232 dict: dict, prepared to use as body in POST request.
3333
3434 """
35- group = kwargs .get ('group' , '' )
35+ query = kwargs .get ('query' , '' )
36+ q_type = kwargs .get ('q_type' , '' )
3637 faculty = kwargs .get ('faculty' , '' )
37- teacher = kwargs .get ('teacher' , '' )
3838 sdate = kwargs .get ('date_from' , '' )
3939 edate = kwargs .get ('date_to' , '' )
4040
4141 post_data = {
4242 'faculty' : faculty ,
43- 'teacher' : teacher .encode (options .base_encoding ),
44- 'group' : group .encode (options .base_encoding ),
43+ q_type : query .encode (options .base_encoding ),
4544 'sdate' : sdate .encode (options .base_encoding ),
4645 'edate' : edate .encode (options .base_encoding ),
4746 'n' : 700
You can’t perform that action at this time.
0 commit comments