['   \n  \n [\'ਮੈਂ ਇੱਕ CSV ਫਾਇਲ ਰਾਹੀਂ ਲੂਪ ਕਰਨ ਅਤੇ ਇੱਕ API ਨੂੰ POST ਕਾਲ ਕਰਨ ਲਈ ਹੇਠ ਦਿੱਤੇ ਅਸਿੰਕ ਪਾਈਥਨ ਕੋਡ ਦੀ ਵਰਤੋਂ ਕਰ ਰਿਹਾ ਹਾਂ। ਮੈਂ ਹੈਰਾਨ ਹਾਂ ਕਿ ਮੈਂ ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਰਨ ਦੇ ਤਰਕ ਨੂੰ ਕਿਵੇਂ ਲਾਗੂ ਕਰ ਸਕਦਾ ਹਾਂ।ਉਹਨਾਂ ਕਤਾਰਾਂ ਲਈ ਜੋ ਇੱਕ ਅਪਵਾਦ ਵਾਪਸ ਕਰਦੀਆਂ ਹਨ, ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਦੇ ਹੋਏ ਕਿ ਮੈਂ ਅਸਿੰਕ ਪ੍ਰੋਗਰਾਮਿੰਗ ਦੇ ਢਾਂਚੇ ਦੇ ਅੰਦਰ ਅਜਿਹਾ ਕਰ ਰਿਹਾ ਹਾਂਃ #ਆਯਾਤ ਆਰਗਪਾਰਸ\\ਨਿੰਪੋਰਟਪਾਂਡਾਸ\\ਨਿੰਪੋਰਟ ਸਿਸ\\ਨਿੰਪੋਰਟ ਓਸ\\ਨਿੰਪੋਰਟ ਡੇਟਟਾਈਮ\\ਨਿੰਪੋਰਟ ਸੰਰਚਨਾ\\ਨਫਰੋਮ ਕੈਂਡੀਡੇਟ ਇੰਪੋਰਟ ਕੈਂਡੀਡੇਟ\\ਨਫਰੋਮ ਬੀਜੀਸੀ _ ਆਬਜੈਕਟ ਇੰਪੋਰਟ ਸੱਦਾ, ਰਿਪੋਰਟ\\ਨਫਰੋਮਨਿਰੰਤਰ ਆਯਾਤ ਨਿਰੰਤਰ ਨਿਗਰਾਨੀ ਲਾਗਰ ਤੋਂ ਆਯਾਤ ਸੈੱਟਅੱਪ _ ਲਾਗਰ ਤੋਂ ਉਪਯੋਗਤਾਵਾਂ ਤੋਂ ਆਯਾਤ ਫਾਰਮੈਟ _ ਕੰਮ _ ਸਥਾਨ, ਪ੍ਰਾਪਤ _ ਚੋਣ ਤੋਂ ਆਯਾਤਅਸਿੰਕਲਾਇਮੀਟਰ\\ਨਿੰਪੋਰਟ cProfile\\nimport pstats\\nimport aiohttp\\nimਪੋਰ੍ਟ ਅਸਿੰਸਿਓ\\n ਅਮੀਰ ਆਯਾਤ ਪ੍ਰਿੰਟ ਤੋਂ\\n rich.console ਆਯਾਤ ਕੰਸੋਲ ਤੋਂ\\nfromrich.progress ਇੰਪੋਰਟ ਟਰੈਕ \\nfrom rich.table ਇੰਪੋਰਟ ਟੇਬਲ\\nਫਰੋਮ ਰਿਚ ਇੰਪੋਰਟ ਬਾਕਸ \\n\\n\\n #ਲੌਗਿੰਗ ਸ਼ੁਰੂ ਕਰੋ \\nloger = ਸੈਟਅਪ _ ਲੌਗਰ () \\n #ਇੱਕ ਆਲਮੀ ਬਣਾਓ"ਰਿਚ" ਫਾਰਮੈਟਿੰਗ ਲਾਇਬਰੇਰੀ ਲਈ ਕੰਸੋਲ ਆਬਜੈਕਟ \\ncossol = Console () \\n #API ਕਾਲਾਂ ਲਈ ਰੇਟ ਸੀਮਤ ਥ੍ਰੈਸ਼ਹੋਲਡ ਸੈੱਟ ਅੱਪ ਕਰੋ \\nlimiter =ਅਸਿੰਕਲਾਇਮੀਟਰ (500) \\n\\nobject _ classes = {\\n\\ \'ਕੈਂਡੀਡੇਟ\\\': ਉਮੀਦਵਾਰ, \\n\\ \'ਸੱਦਾ\': ਸੱਦਾ, \\n\\ \'ਰਿਪੋਰਟ\\\': ਰਿਪੋਰਟ, \\n\\ \'c _ crim\\\':ਨਿਰੰਤਰ ਨਿਗਰਾਨੀ, \\n\\ \'c _ mvr\\\': ਨਿਰੰਤਰ ਨਿਗਰਾਨੀ \\n} \\n\\n #\\\'ਆਬਜੈਕਟ _ ਸਬਟਾਈਪ\' ਸਿਰਫ ਨਿਰੰਤਰ ਨਿਗਰਾਨੀ ਦਾਖਲੇ ਦੇ ਨਾਲ ਵਰਤੀ ਜਾਂਦੀ ਹੈ... \\nasync ਡਿਫਬਣਾਓ _ ਰਿਕਾਰਡ (ਸ਼ੈਸ਼ਨ, ਖਪਤਕਾਰ _ ਡੀ. ਐੱਫ., ਆਬਜੈਕਟ _ ਟਾਈਪ, ਆਬਜੈਕਟ _ ਸਬਟਾਈਪ = ਕੋਈ ਨਹੀਂ): \\n #ਇੱਕ ਸੀਪ੍ਰੋਫਾਇਲ ਆਬਜੈਕਟ ਬਣਾਓ\\n ਪ੍ਰੋਫਾਈਲਰ = cProfile.Profile () \\n #ਸਟਾਰਟਪ੍ਰੋਫਾਈਲਿੰਗ \\n profiler.enable () \\n #ਆਬਜੈਕਟ _ ਟਾਈਪ "ਉਮੀਦਵਾਰ", "ਸੱਦਾ", ਜਾਂ "ਰਿਪੋਰਟ" \\n ਹੋ ਸਕਦੀ ਹੈ ਜੇਕਰ ਆਬਜੈਕਟ _ ਟਾਈਪ = = "ਉਮੀਦਵਾਰ": \\n ID _ ਫੀਲਡ ="ਕੈਂਡੀਡੇਟ _ ਆਈਡੀ" \\n ਗਲਤੀ _ ਫੀਲਡ = "ਕੈਂਡੀਡੇਟ _ ਗਲਤੀ" \\n ਐਲੀਫ ਆਬਜੈਕਟ _ ਟਾਈਪ = = "ਸੱਦਾ": \\n ਆਈਡੀ _ ਫੀਲਡ = "ਸੱਦਾ _ ਆਈਡੀ" \\n ਗਲਤੀ _ ਫੀਲਡ = "ਸੱਦਾ _ ਗਲਤੀ" \\nelif ਆਬਜੈਕਟ _ ਟਾਈਪ = = "ਰਿਪੋਰਟ": \\n ਆਈਡੀ _ ਫੀਲਡ = "ਰਿਪੋਰਟ _ ਆਈਡੀ" \\ਨ ਏਰਰ _ ਫੀਲਡ = "ਰਿਪੋਰਟ _ ਏਰਰ" \\ਨ ਐਲੀਫ ਆਬਜੈਕਟ _ ਟਾਈਪ = = "ਸੀ _ ਕ੍ਰਿਮ": \\ਨ ਆਈਡੀ _ ਫੀਲਡ = "ਸੀ _ ਕ੍ਰਿਮ _ ਆਈਡੀ" \\ਨਗਲਤੀ _ ਫੀਲਡ = "c _ crim _ err" \\n elif ਆਬਜੈਕਟ _ ਟਾਈਪ = = "c _ mvr": \\n ID _ ਫੀਲਡ = "c _ mvr _ ID" \\n ਗਲਤੀ _ ਫੀਲਡ = "c _ mvr _ ਗਲਤੀ" \\n ਹੋਰਃ \\n ਮੁੱਲ ਵਧਾਓ ਗਲਤੀ ("ਗਲਤ")ਆਬਜੈਕਟ _ ਟਾਈਪ। ਉਮੀਦ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਕਿ \'ਉਮੀਦਵਾਰ\', \'ਸੱਦਾ\', \'ਰਿਪੋਰਟ\', \'ਸੀ _ ਕ੍ਰਿਮ\', \'ਸੀ _ ਐੱਮ. ਵੀ. ਆਰ\'.) \'ਐੱਨ. ਐੱਨ. ਐੱਨ. ਐੱਮ. ਐੱਨ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ.ਹਰੇਕ ਵਸਤੂ ਲਈ ਵਿਆਜ \\n ਫੀਲਡ _ ਮੈਪ = {\\n\\ \'ਉਮੀਦਵਾਰ\\\': [\\\'ਪਹਿਲਾ _ ਨਾਮ\\\',\\\'ਆਖਰੀ _ ਨਾਮ\\\',\\\'ਫੋਨ\\\',\\\'ਈਮੇਲ\\\',\\\'ਕਸਟਮ _ ਆਈਡੀ\\\',\\\'ਕੰਮ _ ਟਿਕਾਣੇ\\\',\\ \'ssn\',\\\'dob\',\\\'ਜ਼ਿਪਕੋਡ\', \\n \'ਮਿਡਲ\' ਨਾਮ \',\\\' ਡਰਾਈਵਰ ਲਾਇਸੈਂਸ \'ਨੰਬਰ\',\\\'ਡਰਾਈਵਰ ਲਾਇਸੈਂਸ\' ਰਾਜ \',\\\' ਕਾਪੀ _ ਬੇਨਤੀ \', \\n\' ਸੱਦਾ \':[\'ਕੈਂਡੀਡੇਟ _ ਆਈਡੀ\', \'ਪੈਕੇਜ\', \'ਨੋਡ\', \'ਵਰਕ _ ਲੋਕੇਸ਼ਨ\', \'ਟੈਗ\'] ', 'ਮੈਂ ਹੇਠ ਦਿੱਤੇ ਅਸਿੰਕ ਪਾਈਥਨ ਕੋਡ ਦੀ ਵਰਤੋਂ ਇੱਕ CSV ਫਾਇਲ ਰਾਹੀਂ ਲੂਪ ਕਰਨ ਅਤੇ ਇੱਕ API ਨੂੰ POST ਕਾਲ ਕਰਨ ਲਈ ਕਰ ਰਿਹਾ ਹਾਂ। ਮੈਂ ਸੋਚ ਰਿਹਾ ਹਾਂ ਕਿ ਮੈਂ ਇਸ ਲਈ ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਰਨ ਦੇ ਤਰਕ ਨੂੰ ਕਿਵੇਂ ਲਾਗੂ ਕਰ ਸਕਦਾ ਹਾਂ।ਉਹ ਕਤਾਰਾਂ ਜੋ ਇੱਕ ਅਪਵਾਦ ਵਾਪਸ ਕਰਦੀਆਂ ਹਨ, ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਦੇ ਹੋਏ ਕਿ ਮੈਂ ਅਸਿੰਕ ਪ੍ਰੋਗਰਾਮਿੰਗ ਦੇ ਢਾਂਚੇ ਦੇ ਅੰਦਰ ਅਜਿਹਾ ਕਰ ਰਿਹਾ ਹਾਂਃ #ਆਯਾਤ ਆਰਗਪਾਰਸ ਆਯਾਤ ਪਾਂਡਾ ਆਯਾਤsys ਇੰਪੋਰਟ os ਇੰਪੋਰਟ ਡੇਟਟਾਈਮ ਇੰਪੋਰਟ ਸੰਰਚਨਾ ਉਮੀਦਵਾਰ ਤੋਂ ਇੰਪੋਰਟ bgc _ ਆਬਜੈਕਟ ਤੋਂ ਉਮੀਦਵਾਰ ਇੰਪੋਰਟ ਸੱਦਾ, ਨਿਰੰਤਰ ਆਯਾਤ ਤੋਂ ਰਿਪੋਰਟ ਕਰੋਲਾਗਰ ਇੰਪੋਰਟ ਸੈੱਟਅੱਪ _ ਲੌਗਰ ਤੋਂ ਯੂਟਿਲਸ ਇੰਪੋਰਟ ਫਾਰਮੈਟ _ ਵਰਕ _ ਲੋਕੇਸ਼ਨ ਤੋਂ ਨਿਰੰਤਰ ਨਿਗਰਾਨੀ, ਆਇਓਲਿਮੀਟਰ ਇੰਪੋਰਟ ਅਸਿੰਕਲਾਇਮੀਟਰ ਇੰਪੋਰਟ ਤੋਂ ਗੇਟ _ ਚੁਆਇਸcProfyle ਇੰਪੋਰਟ pstats rich.console ਇੰਪੋਰਟ ਕੰਸੋਲ ਤੋਂ rich.progress ਇੰਪੋਰਟ ਟਰੈਕ ਤੋਂ ਅਮੀਰ ਇੰਪੋਰਟ ਪ੍ਰਿੰਟ ਤੋਂ ਏ. ਆਈ. ਓ. ਐਚ. ਟੀ. ਪੀ. ਇੰਪੋਰਟ ਅਸਿੰਸਿਓ ਇੰਪੋਰਟ ਕਰਦੇ ਹਨ।rich.table ਅਮੀਰ ਆਯਾਤ ਬਕਸੇ ਤੋਂ ਆਯਾਤ ਸਾਰਣੀ #ਲੌਗਿੰਗ ਲੌਗਰ ਨੂੰ ਸ਼ੁਰੂ ਕਰੋ = ਸੈਟਅਪ _ ਲੌਗਰ () #"ਅਮੀਰ" ਫਾਰਮੈਟਿੰਗ ਲਈ ਇੱਕ ਵਿਸ਼ਵਵਿਆਪੀ ਕੰਸੋਲ ਆਬਜੈਕਟ ਬਣਾਓਲਾਇਬ੍ਰੇਰੀ ਕੰਸੋਲ = ਕੰਸੋਲ () #ਏਪੀਆਈ ਕਾਲਾਂ ਲਈ ਦਰ ਸੀਮਤ ਥ੍ਰੈਸ਼ਹੋਲਡ ਸੈੱਟ ਕਰੋ ਲਿਮਿਟਰ = ਅਸਿੰਕਲਾਇਮੀਟਰ (500) ਆਬਜੈਕਟ _ ਕਲਾਸਾਂ = {\'ਉਮੀਦਵਾਰ\': ਉਮੀਦਵਾਰ,\'ਸੱਦਾ\': \'ਸੱਦਾ\', \'ਰਿਪੋਰਟ\': ਰਿਪੋਰਟ, \'ਸੀ _ ਕ੍ਰਿਮ\': ਨਿਰੰਤਰ ਨਿਗਰਾਨੀ, \'ਸੀ _ ਐੱਮਵੀਆਰ\': ਨਿਰੰਤਰ ਨਿਗਰਾਨੀ} #\'ਆਬਜੈਕਟ _ ਸਬਟਾਈਪ\' ਸਿਰਫ ਇਸ ਨਾਲ ਵਰਤੀ ਜਾਂਦੀ ਹੈਨਿਰੰਤਰ ਨਿਗਰਾਨੀ ਨਾਮਜ਼ਦਗੀਆਂ... ਅਸਿੰਕ ਡੀ. ਐੱਫ. ਬਣਾਓ _ ਰਿਕਾਰਡ (ਸੈਸ਼ਨ, ਖਪਤਕਾਰ _ ਡੀ. ਐੱਫ., ਆਬਜੈਕਟ _ ਟਾਈਪ, ਆਬਜੈਕਟ _ ਸਬਟਾਈਪ = ਕੋਈ ਨਹੀਂ): #ਇੱਕ ਸੀਪ੍ਰੋਫਾਇਲ ਆਬਜੈਕਟ ਬਣਾਓਪ੍ਰੋਫਾਈਲਰ = cProfile.Profile () #ਪ੍ਰੋਫਾਈਲਿੰਗ ਸ਼ੁਰੂ ਕਰੋ profiler.enable () #ਆਬਜੈਕਟ _ ਟਾਈਪ "ਉਮੀਦਵਾਰ", "ਸੱਦਾ", ਜਾਂ "ਰਿਪੋਰਟ" ਹੋ ਸਕਦਾ ਹੈ ਜੇਕਰ ਆਬਜੈਕਟ _ ਟਾਈਪ = ="ਕੈਂਡੀਡੇਟ": ਆਈਡੀ _ ਫੀਲਡ = "ਕੈਂਡੀਡੇਟ _ ਆਈਡੀ" ਗਲਤੀ _ ਫੀਲਡ = "ਕੈਂਡੀਡੇਟ _ ਗਲਤੀ" ਐਲੀਫ ਆਬਜੈਕਟ _ ਟਾਈਪ = = "ਸੱਦਾ": ਆਈਡੀ _ ਫੀਲਡ = "ਸੱਦਾ _ ਆਈਡੀ" ਗਲਤੀ _ ਫੀਲਡ ="ਸੱਦਾ _ ਗਲਤੀ" ਐਲੀਫ ਆਬਜੈਕਟ _ ਟਾਈਪ = = "ਰਿਪੋਰਟ": ਆਈਡੀ _ ਫੀਲਡ = "ਰਿਪੋਰਟ _ ਆਈਡੀ" ਗਲਤੀ _ ਫੀਲਡ = "ਰਿਪੋਰਟ _ ਗਲਤੀ" ਐਲੀਫ ਆਬਜੈਕਟ _ ਟਾਈਪ = = "ਸੀ _ ਕ੍ਰਿਮ": ਆਈਡੀ _ ਫੀਲਡ = "ਰਿਪੋਰਟ""c _ crim _ id" ਏਰਰ _ ਫੀਲਡ = "c _ crim _ ਏਰਰ" ਐਲੀਫ ਆਬਜੈਕਟ _ ਟਾਈਪ = = "c _ mvr": ਆਈਡੀ _ ਫੀਲਡ = "c _ mvr _ id" ਏਰਰ _ ਫੀਲਡ = "c _ mvr _ ਏਰਰ" ਹੋਰਃ ਵਧਾਓਵੈਲਯੂ ਏਰਰ ("ਇਨਵੈਲਿਡ ਆਬਜੈਕਟ _ ਟਾਈਪ. ਸੰਭਾਵਿਤ \'ਉਮੀਦਵਾਰ\', \'ਸੱਦਾ\', \'ਰਿਪੋਰਟ\', \'ਸੀ _ ਕ੍ਰਿਮ\', \'ਸੀ _ ਐੱਮ. ਵੀ. ਆਰ.\') #ਸੂਚੀ ਬਣਾਓ ਜਿਸ ਵਿੱਚ ਇਹਨਾਂ ਦੇ ਖਾਸ ਖੇਤਰ ਸ਼ਾਮਲ ਹਨ।ਹਰੇਕ ਆਬਜੈਕਟ ਲਈ ਦਿਲਚਸਪੀ ਫੀਲਡ _ ਮੈਪ = {\'ਉਮੀਦਵਾਰ\': [\'ਪਹਿਲਾ _ ਨਾਮ\', \'ਆਖਰੀ _ ਨਾਮ\', \'ਫੋਨ\', \'ਈਮੇਲ\', \'ਕਸਟਮ _ ਆਈਡੀ\', \'ਵਰਕ _ ਟਿਕਾਣੇ\', \'ਐੱਸਐੱਸਐੱਨ\', \'ਡੋਬ\',\'ਜ਼ਿਪਕੋਡ\', \'ਮਿਡਲ _ ਨੇਮ\', \'ਡਰਾਈਵਰ _ ਲਾਇਸੈਂਸ _ ਨੰਬਰ\', \'ਡਰਾਈਵਰ _ ਲਾਇਸੈਂਸ _ ਸਟੇਟ\', \'ਕਾਪੀ _ ਬੇਨਤੀ\', \'ਸੱਦਾ\': [\'ਕੈਂਡੀਡੇਟ _ ਆਈਡੀ\', \'ਪੈਕੇਜ\', \'ਨੋਡ\',\'ਵਰਕ ਟਿਕਾਣੇ\', \'ਟੈਗ', ' [\'ਮੈਂ ਇੱਕ CSV ਫਾਇਲ ਰਾਹੀਂ ਲੂਪ ਕਰਨ ਅਤੇ ਇੱਕ API ਨੂੰ POST ਕਾਲ ਕਰਨ ਲਈ ਹੇਠ ਦਿੱਤੇ ਅਸਿੰਕ ਪਾਈਥਨ ਕੋਡ ਦੀ ਵਰਤੋਂ ਕਰ ਰਿਹਾ ਹਾਂ। ਮੈਂ ਹੈਰਾਨ ਹਾਂ ਕਿ ਮੈਂ ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਰਨ ਦੇ ਤਰਕ ਨੂੰ ਕਿਵੇਂ ਲਾਗੂ ਕਰ ਸਕਦਾ ਹਾਂ।ਉਹਨਾਂ ਕਤਾਰਾਂ ਲਈ ਜੋ ਇੱਕ ਅਪਵਾਦ ਵਾਪਸ ਕਰਦੀਆਂ ਹਨ, ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਦੇ ਹੋਏ ਕਿ ਮੈਂ ਅਸਿੰਕ ਪ੍ਰੋਗਰਾਮਿੰਗ ਦੇ ਢਾਂਚੇ ਦੇ ਅੰਦਰ ਅਜਿਹਾ ਕਰ ਰਿਹਾ ਹਾਂਃ #ਆਯਾਤ ਆਰਗਪਾਰਸ\\ਨਿੰਪੋਰਟਪਾਂਡਾਸ\\ਨਿੰਪੋਰਟ ਸਿਸ\\ਨਿੰਪੋਰਟ ਓਸ\\ਨਿੰਪੋਰਟ ਡੇਟਟਾਈਮ\\ਨਿੰਪੋਰਟ ਸੰਰਚਨਾ\\ਨਫਰੋਮ ਕੈਂਡੀਡੇਟ ਇੰਪੋਰਟ ਕੈਂਡੀਡੇਟ\\ਨਫਰੋਮ ਬੀਜੀਸੀ _ ਆਬਜੈਕਟ ਇੰਪੋਰਟ ਸੱਦਾ, ਰਿਪੋਰਟ\\ਨਫਰੋਮਨਿਰੰਤਰ ਆਯਾਤ ਨਿਰੰਤਰ ਨਿਗਰਾਨੀ ਲਾਗਰ ਤੋਂ ਆਯਾਤ ਸੈੱਟਅੱਪ _ ਲਾਗਰ ਤੋਂ ਉਪਯੋਗਤਾਵਾਂ ਤੋਂ ਆਯਾਤ ਫਾਰਮੈਟ _ ਕੰਮ _ ਸਥਾਨ, ਪ੍ਰਾਪਤ _ ਚੋਣ ਤੋਂ ਆਯਾਤਅਸਿੰਕਲਾਇਮੀਟਰ\\ਨਿੰਪੋਰਟ cProfile\\nimport pstats\\nimport aiohttp\\nimਪੋਰ੍ਟ ਅਸਿੰਸਿਓ\\n ਅਮੀਰ ਆਯਾਤ ਪ੍ਰਿੰਟ ਤੋਂ\\n rich.console ਆਯਾਤ ਕੰਸੋਲ ਤੋਂ\\nfromrich.progress ਇੰਪੋਰਟ ਟਰੈਕ \\nfrom rich.table ਇੰਪੋਰਟ ਟੇਬਲ\\nਫਰੋਮ ਰਿਚ ਇੰਪੋਰਟ ਬਾਕਸ \\n\\n\\n #ਲੌਗਿੰਗ ਸ਼ੁਰੂ ਕਰੋ \\nloger = ਸੈਟਅਪ _ ਲੌਗਰ () \\n #ਇੱਕ ਆਲਮੀ ਬਣਾਓ"ਰਿਚ" ਫਾਰਮੈਟਿੰਗ ਲਾਇਬਰੇਰੀ ਲਈ ਕੰਸੋਲ ਆਬਜੈਕਟ \\ncossol = Console () \\n #API ਕਾਲਾਂ ਲਈ ਰੇਟ ਸੀਮਤ ਥ੍ਰੈਸ਼ਹੋਲਡ ਸੈੱਟ ਅੱਪ ਕਰੋ \\nlimiter =ਅਸਿੰਕਲਾਇਮੀਟਰ (500) \\n\\nobject _ classes = {\\n\\ \'ਕੈਂਡੀਡੇਟ\\\': ਉਮੀਦਵਾਰ, \\n\\ \'ਸੱਦਾ\': ਸੱਦਾ, \\n\\ \'ਰਿਪੋਰਟ\\\': ਰਿਪੋਰਟ, \\n\\ \'c _ crim\\\':ਨਿਰੰਤਰ ਨਿਗਰਾਨੀ, \\n\\ \'c _ mvr\\\': ਨਿਰੰਤਰ ਨਿਗਰਾਨੀ \\n} \\n\\n #\\\'ਆਬਜੈਕਟ _ ਸਬਟਾਈਪ\' ਸਿਰਫ ਨਿਰੰਤਰ ਨਿਗਰਾਨੀ ਦਾਖਲੇ ਦੇ ਨਾਲ ਵਰਤੀ ਜਾਂਦੀ ਹੈ... \\nasync ਡਿਫਬਣਾਓ _ ਰਿਕਾਰਡ (ਸ਼ੈਸ਼ਨ, ਖਪਤਕਾਰ _ ਡੀ. ਐੱਫ., ਆਬਜੈਕਟ _ ਟਾਈਪ, ਆਬਜੈਕਟ _ ਸਬਟਾਈਪ = ਕੋਈ ਨਹੀਂ): \\n #ਇੱਕ ਸੀਪ੍ਰੋਫਾਇਲ ਆਬਜੈਕਟ ਬਣਾਓ\\n ਪ੍ਰੋਫਾਈਲਰ = cProfile.Profile () \\n #ਸਟਾਰਟਪ੍ਰੋਫਾਈਲਿੰਗ \\n profiler.enable () \\n #ਆਬਜੈਕਟ _ ਟਾਈਪ "ਉਮੀਦਵਾਰ", "ਸੱਦਾ", ਜਾਂ "ਰਿਪੋਰਟ" \\n ਹੋ ਸਕਦੀ ਹੈ ਜੇਕਰ ਆਬਜੈਕਟ _ ਟਾਈਪ = = "ਉਮੀਦਵਾਰ": \\n ID _ ਫੀਲਡ ="ਕੈਂਡੀਡੇਟ _ ਆਈਡੀ" \\n ਗਲਤੀ _ ਫੀਲਡ = "ਕੈਂਡੀਡੇਟ _ ਗਲਤੀ" \\n ਐਲੀਫ ਆਬਜੈਕਟ _ ਟਾਈਪ = = "ਸੱਦਾ": \\n ਆਈਡੀ _ ਫੀਲਡ = "ਸੱਦਾ _ ਆਈਡੀ" \\n ਗਲਤੀ _ ਫੀਲਡ = "ਸੱਦਾ _ ਗਲਤੀ" \\nelif ਆਬਜੈਕਟ _ ਟਾਈਪ = = "ਰਿਪੋਰਟ": \\n ਆਈਡੀ _ ਫੀਲਡ = "ਰਿਪੋਰਟ _ ਆਈਡੀ" \\ਨ ਏਰਰ _ ਫੀਲਡ = "ਰਿਪੋਰਟ _ ਏਰਰ" \\ਨ ਐਲੀਫ ਆਬਜੈਕਟ _ ਟਾਈਪ = = "ਸੀ _ ਕ੍ਰਿਮ": \\ਨ ਆਈਡੀ _ ਫੀਲਡ = "ਸੀ _ ਕ੍ਰਿਮ _ ਆਈਡੀ" \\ਨਗਲਤੀ _ ਫੀਲਡ = "c _ crim _ err" \\n elif ਆਬਜੈਕਟ _ ਟਾਈਪ = = "c _ mvr": \\n ID _ ਫੀਲਡ = "c _ mvr _ ID" \\n ਗਲਤੀ _ ਫੀਲਡ = "c _ mvr _ ਗਲਤੀ" \\n ਹੋਰਃ \\n ਮੁੱਲ ਵਧਾਓ ਗਲਤੀ ("ਗਲਤ")ਆਬਜੈਕਟ _ ਟਾਈਪ। ਉਮੀਦ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਕਿ \'ਉਮੀਦਵਾਰ\', \'ਸੱਦਾ\', \'ਰਿਪੋਰਟ\', \'ਸੀ _ ਕ੍ਰਿਮ\', \'ਸੀ _ ਐੱਮ. ਵੀ. ਆਰ\'.) \'ਐੱਨ. ਐੱਨ. ਐੱਨ. ਐੱਮ. ਐੱਨ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ. ਐੱਮ.ਹਰੇਕ ਵਸਤੂ ਲਈ ਵਿਆਜ \\n ਫੀਲਡ _ ਮੈਪ = {\\n\\ \'ਉਮੀਦਵਾਰ\\\': [\\\'ਪਹਿਲਾ _ ਨਾਮ\\\',\\\'ਆਖਰੀ _ ਨਾਮ\\\',\\\'ਫੋਨ\\\',\\\'ਈਮੇਲ\\\',\\\'ਕਸਟਮ _ ਆਈਡੀ\\\',\\\'ਕੰਮ _ ਟਿਕਾਣੇ\\\',\\ \'ssn\',\\\'dob\',\\\'ਜ਼ਿਪਕੋਡ\', \\n \'ਮਿਡਲ\' ਨਾਮ \',\\\' ਡਰਾਈਵਰ ਲਾਇਸੈਂਸ \'ਨੰਬਰ\',\\\'ਡਰਾਈਵਰ ਲਾਇਸੈਂਸ\' ਰਾਜ \',\\\' ਕਾਪੀ _ ਬੇਨਤੀ \', \\n\' ਸੱਦਾ \':[\\\'ਕੈਂਡੀਡੇਟ _ ਆਈਡੀ\', \'ਪੈਕੇਜ\', \'ਨੋਡ\', \'ਵਰਕ _ ਲੋਕੇਸ਼ਨ\', \'ਟੈਗ\', \'ਤੁਸੀਂ ਇੱਕ ਲੂਪ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇੱਕ ਅਪਵਾਦ ਵਾਪਸ ਕਰਨ ਵਾਲੀਆਂ ਕਤਾਰਾਂ ਲਈ ਤਰਕ ਦੀ ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਰ ਸਕਦੇ ਹੋ।ਅਤੇ ਲੂਪ ਦੀ ਸਥਿਤੀ ਨੂੰ ਟਰੈਕ ਕਰਨ ਲਈ ਇੱਕ ਬੁਲੀਅਨ ਝੰਡਾ। ਜੇਕਰ ਲੂਪ ਆਮ ਤੌਰ ਉੱਤੇ ਬਾਹਰ ਨਿਕਲਦਾ ਹੈ, ਤਾਂ ਇਸਦਾ ਅਰਥ ਹੈ ਕਿ ਸਾਰੀਆਂ ਕਤਾਰਾਂ ਨੂੰ ਸਫਲਤਾਪੂਰਵਕ ਸੰਸਾਧਿਤ ਕੀਤਾ ਗਿਆ ਸੀ। ਜੇਕਰ ਕੋਈ ਅਪਵਾਦ ਹੈਉੱਚਾ ਚੁੱਕਿਆ, ਅਸਫਲ ਕਤਾਰ ਨੂੰ ਮੁਡ਼ ਅਜ਼ਮਾਉਣ ਤੋਂ ਪਹਿਲਾਂ ਲੂਪ ਦੇਰੀ ਨਾਲ ਜਾਰੀ ਰਹਿੰਦਾ ਹੈ। ਇੱਥੇ ਇੱਕ ਉਦਾਹਰਣ ਹੈਃ \\n "\'\\nਫਰੋਮ ਟਾਈਮ ਇੰਪੋਰਟ ਸਲੀਪ \\n\\ਨਾਸਿੰਕ ਡਿਫਪਰੋਸੈੱਸ _ ਰੋਅ (ਰੋਅ): \\n ਕੋਸ਼ਿਸ਼ਃ \\n #ਇੱਥੇ ਰੋਅ ਨੂੰ ਪ੍ਰੋਸੈੱਸ ਕਰੋ \\n ਪਾਸ\\n ਅਪਵਾਦ ਨੂੰ ਛੱਡ ਕੇ e: \\n #ਰੀਟਰਾਈ ਲੂਪ ਦੁਆਰਾ ਫਡ਼ੇ ਜਾਣ ਲਈ ਅਪਵਾਦ ਨੂੰ ਵਧਾਓ \\nਇੱਕ ਅਪਵਾਦ ਨੂੰ ਛੱਡ ਕੇ, ਇੰਡੈਕਸ ਲਈ row df.iterrows (): \\n ਦੀ ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਰੋ = 0 \\n, row in df.iterrows: \\n ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰੋ।e: \\n #ਵਾਧੇ ਦੀ ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਾਊਂਟਰ \\n ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਰੋ + = 1\\n ਜੇਕਰ ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਰੋ <= ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਰੋ _ ਸੀਮਾਃ \\n #ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਦੇਰੀ \\n ਨੀਂਦ (1) \\n ਪ੍ਰਿੰਟ (f "ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਰ ਰਹੀ ਕਤਾਰ {ਸੂਚਕਾਂਕ} ({ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਰੋ) ਦੀ")") \\n ਹੋਰਃ \\n #ਉੱਚ ਪੱਧਰ \\n ਉਠਾਓ \\n \'\\n\' ਦੁਆਰਾ ਫਡ਼ੇ ਜਾਣ ਲਈ ਅਪਵਾਦ ਨੂੰ ਵਧਾਓ ਤੁਸੀਂ ਇਸ ਫੰਕਸ਼ਨ ਨੂੰ ਡੇਟਾ ਫਰੇਮ ਨਾਲ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ ਅਤੇਆਰਗੂਮੈਂਟ ਦੇ ਰੂਪ ਵਿੱਚ ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ਾਂ ਦੀ ਵੱਧ ਤੋਂ ਵੱਧ ਸੰਖਿਆ, ਇਸ ਤਰ੍ਹਾਂਃ \\n \'\' \\nawait retry _ ਲੂਪ (df, 5) \\n \'\\n ਇਹ ਡਾਟਾ ਫਰੇਮ ਵਿੱਚ ਸਾਰੀਆਂ ਕਤਾਰਾਂ ਦੀ ਪ੍ਰਕਿਰਿਆ ਕਰੇਗਾ, ਅਤੇ ਜੇਕਰ ਇੱਕਅਪਵਾਦ ਨੂੰ ਉਭਾਰਿਆ ਜਾਂਦਾ ਹੈ, ਇਹ ਅਪਵਾਦ ਨੂੰ ਦੁਬਾਰਾ ਵਧਾਉਣ ਤੋਂ ਪਹਿਲਾਂ ਅਸਫਲ ਕਤਾਰ ਨੂੰ 5 ਵਾਰ ਤੱਕ ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਰੇਗਾ। \\n\\n ਤੁਸੀਂ ਇਸ ਦੀ ਬਜਾਏ asyncio.sleep (1) ਦੀ ਵਰਤੋਂ ਵੀ ਕਰ ਸਕਦੇ ਹੋ।time.sleep (1) ਬਿਹਤਰ ਕਾਰਗੁਜ਼ਾਰੀ ਲਈ। \\n\\n ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਰਨ ਦੇ ਤਰਕ ਨੂੰ ਲਾਗੂ ਕਰਨ ਦਾ ਇੱਕ ਹੋਰ ਤਰੀਕਾ ਹੈ ਇੱਕ ਡੈਕੋਰੇਟਰ ਦੀ ਵਰਤੋਂ ਕਰਨਾ। ਇੱਥੇ ਇੱਕ ਉਦਾਹਰਨ ਹੈਃ \\n "\'\\ਨਿਮਪੋਰਟਲੌਗਿੰਗ \\n\\ n@retries (ਮੈਕਸ _ ਰੀਟਰੀਜ਼ = 5) \\nਸਾਈਕ ਡਿਫ ਪ੍ਰਕਿਰਿਆ _ ਕਤਾਰ (ਕਤਾਰ): \\n ਕੋਸ਼ਿਸ਼ਃ \\n #ਕਤਾਰ ਨੂੰ ਇੱਥੇ ਪ੍ਰਕਿਰਿਆ ਕਰੋ \\n ਪਾਸ\\n ਅਪਵਾਦ ਨੂੰ ਛੱਡ ਕੇ e: \\nlogging.getLogger (). ਗਲਤੀ (f "ਗਲਤੀ ਪ੍ਰੋਸੈਸਿੰਗ ਰੋਅ {ਰੋਅ [\\\'ਇੰਡੈਕਸ\\\']}: {e}") \\n ਉਠਾਓ\\n\\nawait ਪ੍ਰੋਸੈੱਸ _ ਰੋਅ (ਰੋਅ) \\n "\'\\n ਇਹ ਆਪਣੇ ਆਪ ਹੀ ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਰੇਗਾ5 ਵਾਰ ਤੱਕ ਫੰਕਸ਼ਨ ਕਰੋ ਜੇਕਰ ਕੋਈ ਅਪਵਾਦ ਉਭਾਰਿਆ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਗਲਤੀ ਸੁਨੇਹੇ ਨੂੰ ਲੌਗ ਕਰੋ। ਤੁਸੀਂ \'ਮੈਕਸ _ ਰੀਟਰੀਜ਼\' ਪਾਸ ਕਰਕੇ ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ਾਂ ਦੀ ਗਿਣਤੀ ਨੂੰ ਸੰਰਚਿਤ ਕਰ ਸਕਦੇ ਹੋ,\'ਤੁਹਾਡੇ ਹੱਲ ਨੇ ਮੇਰੇ ਮੂਲ ਕੋਡ ਨੂੰ ਬਹੁਤ ਜ਼ਿਆਦਾ ਨਜ਼ਰਅੰਦਾਜ਼ ਕਰ ਦਿੱਤਾ ਹੈ। ਮੈਂ ਚਾਹੁੰਦਾ ਹਾਂ ਕਿ ਤੁਸੀਂ ਮੇਰੇ ਮੂਲ ਕੋਡ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇੱਕ ਹੱਲ ਪ੍ਰਦਾਨ ਕਰੋ\'] ', 'ਮੈਂ ਹੇਠ ਦਿੱਤੇ ਅਸਿੰਕ ਪਾਈਥਨ ਕੋਡ ਦੀ ਵਰਤੋਂ ਇੱਕ CSV ਫਾਇਲ ਰਾਹੀਂ ਲੂਪ ਕਰਨ ਅਤੇ ਇੱਕ API ਨੂੰ POST ਕਾਲ ਕਰਨ ਲਈ ਕਰ ਰਿਹਾ ਹਾਂ। ਮੈਂ ਸੋਚ ਰਿਹਾ ਹਾਂ ਕਿ ਮੈਂ ਇਸ ਲਈ ਮੁਡ਼ ਕੋਸ਼ਿਸ਼ ਕਰਨ ਦੇ ਤਰਕ ਨੂੰ ਕਿਵੇਂ ਲਾਗੂ ਕਰ ਸਕਦਾ ਹਾਂ।ਉਹ ਕਤਾਰਾਂ ਜੋ ਇੱਕ ਅਪਵਾਦ ਵਾਪਸ ਕਰਦੀਆਂ ਹਨ, ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਦੇ ਹੋਏ ਕਿ ਮੈਂ ਅਸਿੰਕ ਪ੍ਰੋਗਰਾਮਿੰਗ ਦੇ ਢਾਂਚੇ ਦੇ ਅੰਦਰ ਅਜਿਹਾ ਕਰ ਰਿਹਾ ਹਾਂਃ #ਆਯਾਤ ਆਰਗਪਾਰਸ ਆਯਾਤ ਪਾਂਡਾ ਆਯਾਤsys ਇੰਪੋਰਟ os ਇੰਪੋਰਟ ਡੇਟਟਾਈਮ ਇੰਪੋਰਟ ਸੰਰਚਨਾ ਉਮੀਦਵਾਰ ਤੋਂ ਇੰਪੋਰਟ bgc _ ਆਬਜੈਕਟ ਤੋਂ ਉਮੀਦਵਾਰ ਇੰਪੋਰਟ ਸੱਦਾ, ਨਿਰੰਤਰ ਆਯਾਤ ਤੋਂ ਰਿਪੋਰਟ ਕਰੋਲਾਗਰ ਇੰਪੋਰਟ ਸੈੱਟਅੱਪ _ ਲੌਗਰ ਤੋਂ ਯੂਟਿਲਸ ਇੰਪੋਰਟ ਫਾਰਮੈਟ _ ਵਰਕ _ ਲੋਕੇਸ਼ਨ ਤੋਂ ਨਿਰੰਤਰ ਨਿਗਰਾਨੀ, ਆਇਓਲਿਮੀਟਰ ਇੰਪੋਰਟ ਅਸਿੰਕਲਾਇਮੀਟਰ ਇੰਪੋਰਟ ਤੋਂ ਗੇਟ _ ਚੁਆਇਸcProfyle ਇੰਪੋਰਟ pstats rich.console ਇੰਪੋਰਟ ਕੰਸੋਲ ਤੋਂ rich.progress ਇੰਪੋਰਟ ਟਰੈਕ ਤੋਂ ਅਮੀਰ ਇੰਪੋਰਟ ਪ੍ਰਿੰਟ ਤੋਂ ਏ. ਆਈ. ਓ. ਐਚ. ਟੀ. ਪੀ. ਇੰਪੋਰਟ ਅਸਿੰਸਿਓ ਇੰਪੋਰਟ ਕਰਦੇ ਹਨ।rich.table ਅਮੀਰ ਆਯਾਤ ਬਕਸੇ ਤੋਂ ਆਯਾਤ ਸਾਰਣੀ #ਲੌਗਿੰਗ ਲੌਗਰ ਨੂੰ ਸ਼ੁਰੂ ਕਰੋ = ਸੈਟਅਪ _ ਲੌਗਰ () #"ਅਮੀਰ" ਫਾਰਮੈਟਿੰਗ ਲਈ ਇੱਕ ਵਿਸ਼ਵਵਿਆਪੀ ਕੰਸੋਲ ਆਬਜੈਕਟ ਬਣਾਓਲਾਇਬ੍ਰੇਰੀ ਕੰਸੋਲ = ਕੰਸੋਲ () #ਏਪੀਆਈ ਕਾਲਾਂ ਲਈ ਦਰ ਸੀਮਤ ਥ੍ਰੈਸ਼ਹੋਲਡ ਸੈੱਟ ਕਰੋ ਲਿਮਿਟਰ = ਅਸਿੰਕਲਾਇਮੀਟਰ (500) ਆਬਜੈਕਟ _ ਕਲਾਸਾਂ = {\'ਉਮੀਦਵਾਰ\': ਉਮੀਦਵਾਰ,\'ਸੱਦਾ\': \'ਸੱਦਾ\', \'ਰਿਪੋਰਟ\': ਰਿਪੋਰਟ, \'ਸੀ _ ਕ੍ਰਿਮ\': ਨਿਰੰਤਰ ਨਿਗਰਾਨੀ, \'ਸੀ _ ਐੱਮਵੀਆਰ\': ਨਿਰੰਤਰ ਨਿਗਰਾਨੀ} #\'ਆਬਜੈਕਟ _ ਸਬਟਾਈਪ\' ਸਿਰਫ ਇਸ ਨਾਲ ਵਰਤੀ ਜਾਂਦੀ ਹੈਨਿਰੰਤਰ ਨਿਗਰਾਨੀ ਨਾਮਜ਼ਦਗੀਆਂ... ਅਸਿੰਕ ਡੀ. ਐੱਫ. ਬਣਾਓ _ ਰਿਕਾਰਡ (ਸੈਸ਼ਨ, ਖਪਤਕਾਰ _ ਡੀ. ਐੱਫ., ਆਬਜੈਕਟ _ ਟਾਈਪ, ਆਬਜੈਕਟ _ ਸਬਟਾਈਪ = ਕੋਈ ਨਹੀਂ): #ਇੱਕ ਸੀਪ੍ਰੋਫਾਇਲ ਆਬਜੈਕਟ ਬਣਾਓਪ੍ਰੋਫਾਈਲਰ = cProfile.Profile () #ਪ੍ਰੋਫਾਈਲਿੰਗ ਸ਼ੁਰੂ ਕਰੋ profiler.enable () #ਆਬਜੈਕਟ _ ਟਾਈਪ "ਉਮੀਦਵਾਰ", "ਸੱਦਾ", ਜਾਂ "ਰਿਪੋਰਟ" ਹੋ ਸਕਦਾ ਹੈ ਜੇਕਰ ਆਬਜੈਕਟ _ ਟਾਈਪ = ="ਕੈਂਡੀਡੇਟ": ਆਈਡੀ _ ਫੀਲਡ = "ਕੈਂਡੀਡੇਟ _ ਆਈਡੀ" ਗਲਤੀ _ ਫੀਲਡ = "ਕੈਂਡੀਡੇਟ _ ਗਲਤੀ" ਐਲੀਫ ਆਬਜੈਕਟ _ ਟਾਈਪ = = "ਸੱਦਾ": ਆਈਡੀ _ ਫੀਲਡ = "ਸੱਦਾ _ ਆਈਡੀ" ਗਲਤੀ _ ਫੀਲਡ ="ਸੱਦਾ _ ਗਲਤੀ" ਐਲੀਫ ਆਬਜੈਕਟ _ ਟਾਈਪ = = "ਰਿਪੋਰਟ": ਆਈਡੀ _ ਫੀਲਡ = "ਰਿਪੋਰਟ _ ਆਈਡੀ" ਗਲਤੀ _ ਫੀਲਡ = "ਰਿਪੋਰਟ _ ਗਲਤੀ" ਐਲੀਫ ਆਬਜੈਕਟ _ ਟਾਈਪ = = "ਸੀ _ ਕ੍ਰਿਮ": ਆਈਡੀ _ ਫੀਲਡ = "ਰਿਪੋਰਟ""c _ crim _ id" ਏਰਰ _ ਫੀਲਡ = "c _ crim _ ਏਰਰ" ਐਲੀਫ ਆਬਜੈਕਟ _ ਟਾਈਪ = = "c _ mvr": ਆਈਡੀ _ ਫੀਲਡ = "c _ mvr _ id" ਏਰਰ _ ਫੀਲਡ = "c _ mvr _ ਏਰਰ" ਹੋਰਃ ਵਧਾਓਵੈਲਯੂ ਏਰਰ ("ਇਨਵੈਲਿਡ ਆਬਜੈਕਟ _ ਟਾਈਪ. ਸੰਭਾਵਿਤ \'ਉਮੀਦਵਾਰ\', \'ਸੱਦਾ\', \'ਰਿਪੋਰਟ\', \'ਸੀ _ ਕ੍ਰਿਮ\', \'ਸੀ _ ਐੱਮ. ਵੀ. ਆਰ.\') #ਸੂਚੀ ਬਣਾਓ ਜਿਸ ਵਿੱਚ ਇਹਨਾਂ ਦੇ ਖਾਸ ਖੇਤਰ ਸ਼ਾਮਲ ਹਨ।ਹਰੇਕ ਆਬਜੈਕਟ ਲਈ ਦਿਲਚਸਪੀ ਫੀਲਡ _ ਮੈਪ = {\'ਉਮੀਦਵਾਰ\': [\'ਪਹਿਲਾ _ ਨਾਮ\', \'ਆਖਰੀ _ ਨਾਮ\', \'ਫੋਨ\', \'ਈਮੇਲ\', \'ਕਸਟਮ _ ਆਈਡੀ\', \'ਵਰਕ _ ਟਿਕਾਣੇ\', \'ਐੱਸਐੱਸਐੱਨ\', \'ਡੋਬ\',\'ਜ਼ਿਪਕੋਡ\', \'ਮਿਡਲ _ ਨੇਮ\', \'ਡਰਾਈਵਰ _ ਲਾਇਸੈਂਸ _ ਨੰਬਰ\', \'ਡਰਾਈਵਰ _ ਲਾਇਸੈਂਸ _ ਸਟੇਟ\', \'ਕਾਪੀ _ ਬੇਨਤੀ\', \'ਸੱਦਾ\': [\'ਕੈਂਡੀਡੇਟ _ ਆਈਡੀ\', \'ਪੈਕੇਜ\', \'ਨੋਡ\',\'ਵਰਕ ਟਿਕਾਣੇ\', \'ਟੈਗ \n ']