uw-course 0.1.0__py3-none-any.whl → 0.1.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
uw_course/main.py CHANGED
@@ -25,7 +25,7 @@ def parse_arguments():
25
25
  """Parse command-line arguments and validate them."""
26
26
  parser = argparse.ArgumentParser(
27
27
  description="Course Helper: A tool to manage course details and collections.",
28
- epilog="""Hint: Use --course to specify a course
28
+ epilog=f"""Hint: Use --course to specify a course
29
29
  or --file to specify a file with courses using schema: {url}"""
30
30
  )
31
31
  parser.add_argument(
@@ -55,7 +55,7 @@ def main():
55
55
  checkDetail(args.course)
56
56
  elif args.file:
57
57
  with open(args.file, "r") as f:
58
- collection = f.readline().strip()
58
+ collection = f.readline().strip().split("#")[0].strip()
59
59
  dbClassUW.switchCollection(collection)
60
60
  next(f) # Skip the first line
61
61
  for line in f:
@@ -0,0 +1,95 @@
1
+ Metadata-Version: 2.1
2
+ Name: uw-course
3
+ Version: 0.1.3
4
+ Summary: A course helper tool for managing UW courses schedule
5
+ Author-email: Jiucheng Zang <zangjiucheng@gmail.com>
6
+ License: MIT
7
+ Project-URL: homepage, https://github.com/zangjiucheng/CourseExplorer
8
+ Project-URL: repository, https://github.com/zangjiucheng/CourseExplorer
9
+ Requires-Python: >=3.7
10
+ Description-Content-Type: text/markdown
11
+ License-File: LICENSE
12
+ Requires-Dist: attrs
13
+ Requires-Dist: certifi
14
+ Requires-Dist: click
15
+ Requires-Dist: dnspython
16
+ Requires-Dist: pdfschedule
17
+ Requires-Dist: Pillow
18
+ Requires-Dist: pymongo
19
+ Requires-Dist: PyYAML
20
+ Requires-Dist: reportlab
21
+
22
+ # uw-course
23
+
24
+ [![PyPI version](https://badge.fury.io/py/uw-course.svg)](https://badge.fury.io/py/uw-course)
25
+
26
+
27
+ This is a project for UWaterloo students to help them get course information and generate a schedule for the next term.
28
+
29
+ MongoDB DashBoard: [LINK](https://charts.mongodb.com/charts-project-0-cbzai/public/dashboards/091bc68f-76df-48c0-aa69-b21af14c0a8a)
30
+
31
+ ### Example Schedule:
32
+
33
+ ![Image text](https://raw.githubusercontent.com/zangjiucheng/UWaterlooCourseHelperEngine/Release/schedule.jpg)
34
+
35
+ ---
36
+
37
+ ### Install Steps:
38
+ 1. Install Python3 (>= 3.7) [Python Website](https://www.python.org/downloads/)
39
+ 2. ```bash
40
+ pip install uw-course
41
+ ```
42
+
43
+ ---
44
+
45
+ ### Usage:
46
+
47
+ #### 1. Get Course Information
48
+ 1. Run the following command in the terminal
49
+ ```bash
50
+ uw-course -c "{CourseName}"
51
+ ```
52
+
53
+ Example:
54
+ ```bash
55
+ uw-course -c "CO 250"
56
+ ```
57
+
58
+ #### 2. Get Course Schedule
59
+ 1. Create a new file named ```schedule.txt``` in the folder you want to save the schedule
60
+ 2. Edit ```schedule.txt``` with the following format:
61
+ ```txt
62
+ Class{year}{Winter/Summer/Fall}
63
+
64
+ {Course}{CourseName}, {ClassID}
65
+ {Course}{CourseName}, {ClassID}
66
+ ...
67
+ ```
68
+
69
+ Example:
70
+ ```txt
71
+ Class2025Winter
72
+
73
+ PHYS 234, 7166
74
+ CS 431, 8788
75
+ PMATH 351, 6382
76
+ CO 353, 6157
77
+ STAT 231, 6097
78
+ AMATH 250, 5967
79
+ ```
80
+ 3. Run the following command in the folder you saved the ```schedule.txt``` file
81
+ ```bash
82
+ uw-course -f schedule.txt
83
+ ```
84
+ (If you want to get the schedule with gray printables, you can add the ```-g``` flag)
85
+ ```bash
86
+ 4. The program will generate a ```schedule.pdf``` file in the same folder, which is the schedule you want to see
87
+
88
+ #### Any Idea or Question, welcome send me an email via: j7zang@uwaterloo.ca
89
+
90
+ ---
91
+
92
+ ## License
93
+
94
+ This project is open-source and can be modified and used for personal or educational purposes. Attribution to the original creator is appreciated. (MIT License)
95
+
@@ -1,5 +1,5 @@
1
1
  uw_course/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- uw_course/main.py,sha256=qkH1FoPLZQRGaSrXVcFa94l_g462rUG4ApDvARCoYxI,2632
2
+ uw_course/main.py,sha256=TNC3drvnAA4EZ0YWBdNGm75ct08iem6VT8cxZ7wSzMU,2655
3
3
  uw_course/setting.py,sha256=MSJVr85Kc3XMFKW-rFKx34TDJWtbK4axj7TpzO0mTqM,177
4
4
  uw_course/ClassSchedule/SearchInfo.py,sha256=Us5LMFCn7CrWpGuatcGUIxznwvXyNIRe08Zo9EBnxs8,2166
5
5
  uw_course/ClassSchedule/runner.py,sha256=3M6iR95ycqpq5sK46FlrA7zihfJTwLhvESkjf8GBx6E,2321
@@ -7,9 +7,9 @@ uw_course/DB/dbClass.py,sha256=VxzcZEwGnVZDAJnad_Z654Vwv6zSa4nGcPIw58GxMfE,1004
7
7
  uw_course/Utiles/colorMessage.py,sha256=HlTn2saR96Sh5jRjBZ_P8EvHrzORxOR6-Zzu0ATHuw0,176
8
8
  uw_course/Utiles/manageDBClass.py,sha256=0V721lervaRzJyiFHgQrUovNKNYba8uiD9WIEeQLAe4,641
9
9
  uw_course/Utiles/randomColor.py,sha256=4zubPBcRxos5Rqb8O-ZmkYYKvzPP9NjSdzZwdTZOmy0,467
10
- uw_course-0.1.0.dist-info/LICENSE,sha256=3gvYdtz3_nCjhGpKAbUQzU1CT9anApYNOrn-bF6ZhI8,1073
11
- uw_course-0.1.0.dist-info/METADATA,sha256=3N2S8aEyrmWrXrYU7O9h9y9Ka638ROnrc5YZunMAXGI,2143
12
- uw_course-0.1.0.dist-info/WHEEL,sha256=R06PA3UVYHThwHvxuRWMqaGcr-PuniXahwjmQRFMEkY,91
13
- uw_course-0.1.0.dist-info/entry_points.txt,sha256=jmijLKvAtiXIUz-KXwSo0roUlHhUuvYNXsfSIfvm-nk,64
14
- uw_course-0.1.0.dist-info/top_level.txt,sha256=b760hy15dn_4qeUiKj9gQ8jnO9caaRoD-4ks28p81NY,10
15
- uw_course-0.1.0.dist-info/RECORD,,
10
+ uw_course-0.1.3.dist-info/LICENSE,sha256=3gvYdtz3_nCjhGpKAbUQzU1CT9anApYNOrn-bF6ZhI8,1073
11
+ uw_course-0.1.3.dist-info/METADATA,sha256=pbpasvqCfJdsjaPdA_DQuS_5XWi8mqC9_ovHq6ELd4Q,2439
12
+ uw_course-0.1.3.dist-info/WHEEL,sha256=R06PA3UVYHThwHvxuRWMqaGcr-PuniXahwjmQRFMEkY,91
13
+ uw_course-0.1.3.dist-info/entry_points.txt,sha256=KwZTcAbhGgjmTdkqwUtMDKzhZ1iqGY5OmaH6F7XNgRk,50
14
+ uw_course-0.1.3.dist-info/top_level.txt,sha256=b760hy15dn_4qeUiKj9gQ8jnO9caaRoD-4ks28p81NY,10
15
+ uw_course-0.1.3.dist-info/RECORD,,
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ uw-course = uw_course.main:main
@@ -1,70 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: uw-course
3
- Version: 0.1.0
4
- Summary: A course helper tool for managing UW courses schedule
5
- Author-email: Jiucheng Zang <zangjiucheng@gmail.com>
6
- License: MIT
7
- Project-URL: homepage, https://github.com/zangjiucheng/CourseExplorer
8
- Project-URL: repository, https://github.com/zangjiucheng/CourseExplorer
9
- Requires-Python: >=3.7
10
- Description-Content-Type: text/markdown
11
- License-File: LICENSE
12
- Requires-Dist: attrs
13
- Requires-Dist: certifi
14
- Requires-Dist: click
15
- Requires-Dist: dnspython
16
- Requires-Dist: pdfschedule
17
- Requires-Dist: Pillow
18
- Requires-Dist: pymongo
19
- Requires-Dist: PyYAML
20
- Requires-Dist: reportlab
21
-
22
- # UWaterlooCourseHelperEngine
23
-
24
- MongoDB DashBoard: [LINK](https://charts.mongodb.com/charts-project-0-cbzai/public/dashboards/091bc68f-76df-48c0-aa69-b21af14c0a8a)
25
-
26
- ### Example Schedule:
27
-
28
- ![Image text](https://raw.githubusercontent.com/zangjiucheng/UWaterlooCourseHelperEngine/Release/schedule.jpg)
29
-
30
- ## This Version Still on Test!
31
-
32
- #### Install Steps:
33
- 1. Install Python3 (Developed on py3.11) [Python Website](https://www.python.org/downloads/)
34
- 2. Clone this Repository
35
- 3. Go into ```OnlineVersion``` Folder
36
- 4. Install Requirement With Command ```pip install -r requirement.txt ```
37
- 5. Edit main.py Code With following Command:
38
-
39
- Choose Term To Attend Class: (It Deisides which Term it Will Looking For!)
40
- #### Current Avalible: Class2023Fall Class2024Winter (Rest Will be Update Later...)
41
-
42
- Example:
43
- ```
44
- dbClassUW.switchCollection(collectionName="Class2023Fall") # Class2023Fall Class2024Winter
45
- ```
46
-
47
- #### Add Course on to Print List
48
-
49
- ```
50
- addCourse(SearchAvalibleInTerm(dbClassUW, COURSE_INDEX))
51
- addCourse(SearchAvalibleInTerm(dbClassUW, COURSE_INDEX,CLASS_ID))
52
- ```
53
- (If without CLASS_ID, it will print all the avalible class)
54
-
55
- #### Example:
56
- ```
57
- addCourse(SearchAvalibleInTerm(dbClassUW, "CS 145"))
58
- addCourse(SearchAvalibleInTerm(dbClassUW, "CS 350",6583))
59
- ```
60
-
61
- 6. Save main.py
62
- 7. Run ```pdfschedule schedule``` in CLI.
63
- 8. ```schedule.pdf``` will be create in the folder
64
-
65
- #### Enjoy~
66
-
67
- #### Any Idea or Question, welcome send me an email via: j7zang@uwaterloo.ca
68
-
69
- Or you can open an issue, or just find me in school :)
70
-
@@ -1,2 +0,0 @@
1
- [console_scripts]
2
- perspective-transformer = uw_course.main:main