dibgerge / ml-coursera-python-assignments

Python assignments for the machine learning class by andrew ng on coursera with complete submission for grading capability and re-written instructions.
5.45k stars 2.16k forks source link

Problem with Exercise 8 Grader Assignment Key #83

Closed ghost closed 3 years ago

ghost commented 3 years ago

The assignment key for Exercise 8 seems to be incorrect and the grader cannot grade the assignments due to it.

mrgransky commented 3 years ago

For exercise 8, I still get following error with new submit_url = 'https://www.coursera.org/api/onDemandProgrammingScriptSubmissions.v1?includes=evaluation' in submission.py:

---------------------------------------------------------------------------
HTTPError                                 Traceback (most recent call last)
/tmp/ipykernel_17994/1560601546.py in <module>
      1 grader[1] = estimateGaussian
----> 2 grader.grade()

~/Documents/Courses/ML_Andrew_Ng/Exercises/submission.py in grade(self)
     28                                 for part_id, result in self:
     29                                                 parts[str(part_id)] = {'output': sprintf('%0.5f ', result)}
---> 30                                 result, response = self.request(parts)
     31                                 response = json.loads(response.decode("utf-8"))
     32 

~/Documents/Courses/ML_Andrew_Ng/Exercises/submission.py in request(self, parts)
     77 
     78                                 params = urlencode({'jsonBody': json.dumps(params)}).encode("utf-8")
---> 79                                 f = urlopen(self.submit_url, params)
     80                                 try:
     81                                                 return 0, f.read()

~/anaconda3/envs/jup_env/lib/python3.7/urllib/request.py in urlopen(url, data, timeout, cafile, capath, cadefault, context)
    220     else:
    221         opener = _opener
--> 222     return opener.open(url, data, timeout)
    223 
    224 def install_opener(opener):

~/anaconda3/envs/jup_env/lib/python3.7/urllib/request.py in open(self, fullurl, data, timeout)
    529         for processor in self.process_response.get(protocol, []):
    530             meth = getattr(processor, meth_name)
--> 531             response = meth(req, response)
    532 
    533         return response

~/anaconda3/envs/jup_env/lib/python3.7/urllib/request.py in http_response(self, request, response)
    639         if not (200 <= code < 300):
    640             response = self.parent.error(
--> 641                 'http', request, response, code, msg, hdrs)
    642 
    643         return response

~/anaconda3/envs/jup_env/lib/python3.7/urllib/request.py in error(self, proto, *args)
    567         if http_err:
    568             args = (dict, 'default', 'http_error_default') + orig_args
--> 569             return self._call_chain(*args)
    570 
    571 # XXX probably also want an abstract factory that knows when it makes

~/anaconda3/envs/jup_env/lib/python3.7/urllib/request.py in _call_chain(self, chain, kind, meth_name, *args)
    501         for handler in handlers:
    502             func = getattr(handler, meth_name)
--> 503             result = func(*args)
    504             if result is not None:
    505                 return result

~/anaconda3/envs/jup_env/lib/python3.7/urllib/request.py in http_error_default(self, req, fp, code, msg, hdrs)
    647 class HTTPDefaultErrorHandler(BaseHandler):
    648     def http_error_default(self, req, fp, code, msg, hdrs):
--> 649         raise HTTPError(req.full_url, code, msg, hdrs, fp)
    650 
    651 class HTTPRedirectHandler(BaseHandler):

HTTPError: HTTP Error 400: Bad Request