| 44 | |
| 45 | |
| 46 | class GcpModuleLoader(importlib.abc.Loader): |
| 47 | def __init__(self): |
| 48 | pass |
| 49 | |
| 50 | def create_module(self, spec): |
| 51 | """Create the gcp module from the spec. |
| 52 | """ |
| 53 | import kaggle_gcp |
| 54 | _LOADERS = { |
| 55 | 'google.cloud.bigquery': kaggle_gcp.init_bigquery, |
| 56 | 'google.cloud.storage': kaggle_gcp.init_gcs, |
| 57 | 'google.cloud.translate': kaggle_gcp.init_translation_v3, |
| 58 | 'google.cloud.translate_v2': kaggle_gcp.init_translation_v2, |
| 59 | 'google.cloud.translate_v3': kaggle_gcp.init_translation_v3, |
| 60 | 'google.cloud.language': kaggle_gcp.init_natural_language, |
| 61 | 'google.cloud.language_v1': kaggle_gcp.init_natural_language, |
| 62 | 'google.cloud.videointelligence': kaggle_gcp.init_video_intelligence, |
| 63 | 'google.cloud.videointelligence_v1': kaggle_gcp.init_video_intelligence, |
| 64 | 'google.cloud.vision': kaggle_gcp.init_vision, |
| 65 | 'google.cloud.vision_v1': kaggle_gcp.init_vision |
| 66 | } |
| 67 | monkeypatch_gcp_module = _LOADERS[spec.name]() |
| 68 | return monkeypatch_gcp_module |
| 69 | |
| 70 | def exec_module(self, module): |
| 71 | pass |
| 72 | |
| 73 | if not hasattr(sys, 'frozen'): |
| 74 | sys.meta_path.insert(0, GcpModuleFinder()) |