From 5a8c1e83efcce12ba92afc6eaa09a54513480ab1 Mon Sep 17 00:00:00 2001 From: williamforbrigd <hansw0701@gmail.com> Date: Wed, 23 Feb 2022 12:56:05 +0100 Subject: [PATCH] fixed .gitignore and added endpoints --- .gitignore | 52 +++++++++++++++++++++- bbcli/__pycache__/__init__.cpython-38.pyc | Bin 587 -> 0 bytes bbcli/__pycache__/__main__.cpython-38.pyc | Bin 383 -> 0 bytes bbcli/__pycache__/cli.cpython-38.pyc | Bin 850 -> 0 bytes bbcli/cli.py | 2 + bbcli/endpoints.py | 8 ++-- tests/test_bbcli.py | 2 +- 7 files changed, 57 insertions(+), 7 deletions(-) delete mode 100644 bbcli/__pycache__/__init__.cpython-38.pyc delete mode 100644 bbcli/__pycache__/__main__.cpython-38.pyc delete mode 100644 bbcli/__pycache__/cli.cpython-38.pyc diff --git a/.gitignore b/.gitignore index 248848d..88315da 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,50 @@ -bbcli/__pycache__ -tests/__pycache__ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] + +# C extensions +*.so + +# Distribution / packaging +bin/ +build/ +develop-eggs/ +dist/ +eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +*.egg-info/ +.installed.cfg +*.egg + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +.tox/ +.coverage +.cache +nosetests.xml +coverage.xml + +# Translations +*.mo + +# Mr Developer +.mr.developer.cfg +.project +.pydevproject + +# Rope +.ropeproject + +# Django stuff: +*.log +*.pot + +# Sphinx documentation +docs/_build/ \ No newline at end of file diff --git a/bbcli/__pycache__/__init__.cpython-38.pyc b/bbcli/__pycache__/__init__.cpython-38.pyc deleted file mode 100644 index 03ff31385bb1d05e3907f5bcfddf9136938361a8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 587 zcmY*VO>5gg5M9~&mYot(dabT5SW<H-g;JVE4!DFQNH&F~u&gv|u~gEEm7EY?`)m4t zdeXJ0{Dab7x;9E_W|?8$d&4mM*3+qrRGe&|Wj{28e(u5lu~$E+Y%f#+gb`?1gApFV z81!<yLQDtaoA$-R1~##UZR}tdd&~rrSzs|6Z03N&JaD;zC*Y-MHrc&giDq81TUPoF z&A-xu`5Phq<i=l#c`Sn7$g;fTJ0l8S2hoE%49&D&d-Y(cZucS=^@bNdaLMvc$a|kj zDdg^W;5WQv19bwlqZw_PFBye_eEyHTle~KzJ?g|9gwKbmtJ$=-2mz53(oYDXO+#v0 zF@-!rZkcSks0qOitDzCR?%Ljvv@Te0rR($aMVewKUM6IbB-aUcFP4{!p`XSdNwPSL z2Y965=VZBhl-*D1_0^!+%VDZF4|~$@NP5bGL-~Cfu3L3Sc*o0<(@Hs*NnSu0i+o!# zby0XDMImWb@wy1P`gM2uHj3uao73>%Z%7EQc}Gal-1qjoO2D>c@Aq!Efhzh~*L2Nx Q&0iz!$<s$j;iviMFL`95VE_OC diff --git a/bbcli/__pycache__/__main__.cpython-38.pyc b/bbcli/__pycache__/__main__.cpython-38.pyc deleted file mode 100644 index 239121a6e6bae800e8b66326c1d18ccf1ce6c731..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 383 zcmYjLyH3O~5L`c!3y4TZPmwlAgdac%3F;H#(YRS9afAX%Y&oGgT4?F{1$w?FEfv2& z#o8y}R@%qdJ2QKmrn^A##?tD8`lkom!3msEjs+DB3N+KaV?9^A7fLYDLdzFWvWax` zz};aZpMhTEYseQ*2UnNbjXAn7Su;#-omtZkQ#RJFwNvp$ijebJ)LlF8A(qzSQ1%UC z?SHmI5ICnCmsBRWXA{@#m5~pS4`1a>?O12-0zVhdU#$cQI?sFuC#i+<y<b)2cZ}GV z?SNR=^(_4u)5hp|z?`4w<acG2$MXVFn;KC?fgTKk_TTR2@_(bv6a}S|-ss1!Ic0># Mgo+ePo`{6~0CTZUfdBvi diff --git a/bbcli/__pycache__/cli.cpython-38.pyc b/bbcli/__pycache__/cli.cpython-38.pyc deleted file mode 100644 index 56ca9b0fb311d2f4f601ee8db6500f8685de7ca6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 850 zcmZXS&2H2%5P)sR$!7ohBXQxD0|Ii`rs9H-DumP`goH{(x0hTZZ|v?GoH%l_Te{)| zz48PFse9y=eC5OwAoT*{bb(4Zn#s)A9?yLC$#B?1Fs{w!WRD>9-8r{M7o2Ax^#T+} zDdLzDg$t4r>}*eYsRw_mXyK=R5u^b|!n^9MP#TIZ_qhLs@PKzNXxbCuReuGuZwC+$ zd6)M@kN5fDb8w0U5#758;zL-!!8b4bPdFWN?-<2f%lqS*tfNBnxe`%j^g?n`N6kz` zZ;qm|9v$dt|JBQ#A5bHTu?=5WjnpMmhcU5(EMrxbm8=k1X8T#T5T=INEQ3jZ!PH#X zz=&pU${f1{>)~u4WFMry2kHYdQG>2<LoT87#=Ascy%oj?VswQ*Vve9za=0YXBKED{ zoL9nFD)N~&9&9%hl%>z#%O=LgW&VbYgMa-ZIjNzh<V-3hS#he(#K<X64s<>*MA_8I zk<nAbib9stL~_<NkDl!Aj&>hEN+y$B$pmDlI=9<@d&`+p6PCXlK>j)ag)qf;uyOvf zI~uJSEXioGe0V(5XDv+Nq-4$<y9af&UK6pBM*^ze8ONTbGodOQ{>g7cS!aSxg#nnI z^$z0>{EwyM*|KyTT2}b5?H_1tL8!HFR3BVR3nt5Luxfah2=$G#;|<%%GOlyD$^Zxh z5aXsz2bA?&8n<Zs<Mt9fXw1@y)~W?yHr(Ri=8?2%Z=LOK#Iyy3dp8g6sjIww0n{6i VkZd{e141$R_g&Lp1P3Ac`5VEN%tZhI diff --git a/bbcli/cli.py b/bbcli/cli.py index 0389e53..efd4ffb 100644 --- a/bbcli/cli.py +++ b/bbcli/cli.py @@ -14,6 +14,8 @@ def _version_callback(value: bool) -> None: typer.echo(f"{__app_name__} v{__version__}") raise typer.Exit() + + @app.callback() def main( version: Optional[bool] = typer.Option( diff --git a/bbcli/endpoints.py b/bbcli/endpoints.py index 7a452f1..d1d2cfe 100644 --- a/bbcli/endpoints.py +++ b/bbcli/endpoints.py @@ -5,16 +5,16 @@ import pprint import typer #from string_builder import StringBuilder import click +from typing import Optional app = typer.Typer() - -cookies = {'BbRouter': 'expires:1645188702,id:0E5CC03E415FE4459D9F34DDDFC4AEE7,signature:4e8d6fc59c11f744f6350399dc8cdf14f65a2c26d20e7d53c97141749e9056ac,site:f4fe20be-98b0-4ecd-9039-d18ce2989292,timeout:10800,user:15bd75dd85af4f56b31283276eb8da7c,v:2,xsrf:ac218e34-3110-415c-8718-bd0c8c8bcc8c'} +cookies = {'BbRouter': 'expires:1645202601,id:2480855EED2012DA032F19DEE1610883,signature:81a13d5bdf4946a82a632a9035c0f35811f217671da872677b1d1c32e7a3c339,site:f4fe20be-98b0-4ecd-9039-d18ce2989292,timeout:10800,user:15bd75dd85af4f56b31283276eb8da7c,v:2,xsrf:1bea7fee-fa91-4197-991f-1d266fd1ceee'} base_url = 'https://ntnu.blackboard.com/learn/api/public/v1/' @app.command() -def getuser(user_name: str = 'hanswf') -> None: +def getuser(user_name: str = typer.Argument('hanswf', help='Name of the user'))-> None: ''' Get the user. Specify the user_name as an option, or else it will use the default user_name @@ -42,7 +42,7 @@ def getcourse(course_id: str = 'IDATT2900'): @app.command() def getcoursecontents(course_id: str = '_27251_1'): - url = base_url + 'courses/%s/contents' % course_id + url = f'{base_url}courses/{course_id}/contents' x = requests.get(url, cookies=cookies) data = x.json() print(pprint.pprint(data)) diff --git a/tests/test_bbcli.py b/tests/test_bbcli.py index 14c5d1c..8eaa532 100644 --- a/tests/test_bbcli.py +++ b/tests/test_bbcli.py @@ -6,7 +6,7 @@ runner = CliRunner() def test_version(): # invokes the command line and checks the version - result = runner.invoke(cli.app, ["--version"]) + result = runner.invoke(cli.app, ['--version']) assert result.exit_code == 0 assert result.output == f"{__app_name__} v{__version__}\n" -- GitLab