Closed proffapt closed 11 months ago
@proffapt Can I work on This issue? , also can you tell me more about the project
Should we include institute holidays? There are certain holidays whose dates might change according to the moon. So I would rather have my classes shown in a holiday than no class schedule on a working day.
Thankfully those holidays have asterisks. So we may be able to handle those cases
@proffapt Can I work on This issue? , also can you tell me more about the project
Yes, you can implement the second part, the first includes an internal academic calendar which can be handled later on, moving gradually.
About the project.. IIT Kharagpur has an ERP (Enterprise Resource Planning - can google about what and why it is if you wish), there it has timetable for us. What this project does is scrapes the timetable from specific endpoint and some other required sorcery to get the course names from course codes. Then it creates data.txt file for this information which later is prompted to be converted into an ICS file.
It has recurrance mechanism which repeats the timetable for a week except for the holiday timeline/days currently they include only Mid semester exams and End Semester exams. As mentioned there are holidays listed on public portal, which needs to be scrapped - providing special handling to the cases with *
i.e., they are subject to change.
@proffapt Thank you for your information , I understand what needs to be done , I have currently build a web scraper that scrapes the link given in the second part and stores that into json format , to run the project I do need a roll no and the security answer can you help me with that?
@proffapt Thank you for your information , I understand what needs to be done , I have currently build a web scraper that scrapes the link given in the second part and stores that into json format , to run the project I do need a roll no and the security answer can you help me with that?
I don't think I would be able to provide you with that. Try to test without user's credentials, what I can do is provide you with a data.txt
file which will bypass the need to login - if you have the latest iteration of project pulled.
{
"Monday": {
"8:0:AM-8:55:AM": [
"IM31006",
"208 (E1)",
2,
"SIMULATION"
],
"10:0:AM-10:55:AM": [
"IM31005",
"310 (QEDM-Seminar Room)",
1,
"QUALITY DESIGN AND CONTROL"
],
"11:0:AM-11:55:AM": [
"AI42001",
"NR411",
1,
"MACHINE LEARNING FOUNDATIONS AND APPLICATIONS"
],
"12:0:PM-12:55:PM": [
"IM31203",
"208 (E1)",
1,
"PRODUCTION PLANNING AND CONTROL"
],
"2:0:PM-2:55:PM": [
"IM39005",
"301 (QDC Lab)",
3,
"QUALITY DESIGN AND CONTROL LABORATORY"
]
},
"Tuesday": {
"8:0:AM-8:55:AM": [
"AI42001",
"NR411",
2,
"MACHINE LEARNING FOUNDATIONS AND APPLICATIONS"
],
"10:0:AM-10:55:AM": [
"IM31203",
"208 (E1)",
2,
"PRODUCTION PLANNING AND CONTROL"
],
"12:0:PM-12:55:PM": [
"IM31006",
"208 (E1)",
1,
"SIMULATION"
],
"2:0:PM-2:55:PM": [
"IM39005",
"301 (QDC Lab)",
3,
"QUALITY DESIGN AND CONTROL LABORATORY"
]
},
"Wednesday": {
"8:0:AM-8:55:AM": [
"IM31005",
"310 (QEDM-Seminar Room)",
2,
"QUALITY DESIGN AND CONTROL"
],
"12:0:PM-12:55:PM": [
"IM31201",
"208 (E1)",
1,
"SUPPLY CHAIN MANAGEMENT"
],
"2:0:PM-2:55:PM": [
"IM39005",
"301 (QDC Lab)",
3,
"QUALITY DESIGN AND CONTROL LABORATORY"
]
},
"Thursday": {
"8:0:AM-8:55:AM": [
"IM31203",
"208 (E1)",
1,
"PRODUCTION PLANNING AND CONTROL"
],
"10:0:AM-10:55:AM": [
"IM31005",
"310 (QEDM-Seminar Room)",
1,
"QUALITY DESIGN AND CONTROL"
],
"11:0:AM-11:55:AM": [
"IM31201",
"208 (E1)",
1,
"SUPPLY CHAIN MANAGEMENT"
],
"2:0:PM-2:55:PM": [
"AI42001",
"NR411",
3,
"MACHINE LEARNING FOUNDATIONS AND APPLICATIONS"
]
},
"Friday": {
"9:0:AM-9:55:AM": [
"IM31201",
"208 (E1)",
2,
"SUPPLY CHAIN MANAGEMENT"
],
"2:0:PM-2:55:PM": [
"IM39201",
"101 (ORDS Lab)",
3,
"SIMULATION LAB"
]
}
}
This is the file, saving it in the root directory of the project will bypass the need to enter credentials - just type n
when prompted to overwrite data.txt
.
@proffapt Thank you for this , If this does not work somehow , I will create a private repository for the scraper and add you so It could be useful for this project
@proffapt Thank you for this , If this does not work somehow , I will create a private repository for the scraper and add you so It could be useful for this project
I am pretty sure it will work (>ᴗ•)
@proffapt that worked thank you : )
@Vayras any updates?
@proffapt I am able to scrape the dates of the holidays from the site and add them to the ICS file, But I could not find any source on how to remove events from the file. (I'll need to remove the time table events on a holiday other than adding the holiday). Could you please help with that?
https://github.com/metakgp/gyft/blob/master/del_events.py @Vector-013 this is the file you shuold be looking at to achieve what you wish to
Thanks a lot , I will check that out
I have made some edits in the code and currently my calendar looks like this upon adding the ICS file.
Also added some code specifically for the Autumn break as it was not there in the website of IIT KGP holidays. One issue currently is for 2 holidays in this semester (2 October and 28 September) are having both the time table and the holiday displayed together. Other holidays are cleared in the Semester.
Another issue is the google API choice in gyft.py is giving me an error. Am I also supposed to make some changes in the API part of the code to incorporate the changes of the ICS file?
@Vector-013 can you join https://bit.ly/metakgp-slack we can better resolve your queries there. Thanks for the work!
Thank you! It is requested if possible to assign the issue to my account https://github.com/ojasdubey as it has pro features provided by iit kgp. Sorry about the inconvinience.
For that you would have to comment or commit here using that account. Also ask your query on slack channel
updates?
Currently trying to figure out a method to break the recursion on holidays in the Google api calendar (like for the ics file) . Have setup the feature on my device. Also found a few sources to refer to , should make progress by tomorrow
@Vector-013 is it completed?
Yea I made one pr , the code in that works fine. Although Ashwin has also said to correct to automate the procedure to check current semester ongoing which I'll change. Abhi end sem ke baad :_(
yeah, great!
Hey I corrected that part too. please check it out
Is this issue resolved? I used the most recent version yesterday, and classes still showing up on holidays like 2nd October.
Hey @Kanomus, the PR corresponding to the issue had been in progress, and it has been merged now :) Don't worry though, you can look into the other issues in gyft, or even other projects under MetaKGP!
Currently the timeline only includes endsems and midsems. We can extend that to: