From f99da85e8c16151eb5158b90d5278e14409643bc Mon Sep 17 00:00:00 2001 From: "shuwen.wu" Date: Wed, 2 Sep 2026 18:52:07 +0800 Subject: [PATCH] fix: replace import urllib with import urllib.parse The modules import urllib but call urllib.parse.* functions. In Python, importing urllib does not import its submodules. This change fixes AttributeError when using these modules directly without any prior import of urllib.parse. Fixes #2803 --- googleapiclient/_helpers.py | 2 +- googleapiclient/discovery.py | 2 +- googleapiclient/http.py | 2 +- googleapiclient/model.py | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/googleapiclient/_helpers.py b/googleapiclient/_helpers.py index 17b8a171514..c63d08448e4 100644 --- a/googleapiclient/_helpers.py +++ b/googleapiclient/_helpers.py @@ -17,7 +17,7 @@ import functools import inspect import logging -import urllib +import urllib.parse logger = logging.getLogger(__name__) diff --git a/googleapiclient/discovery.py b/googleapiclient/discovery.py index 16e02bb4ac9..4e92b2cc1bd 100644 --- a/googleapiclient/discovery.py +++ b/googleapiclient/discovery.py @@ -37,7 +37,7 @@ import mimetypes import os import re -import urllib +import urllib.parse import google.api_core.client_options from google.auth.exceptions import MutualTLSChannelError diff --git a/googleapiclient/http.py b/googleapiclient/http.py index d5d2b737e60..5aad0768548 100644 --- a/googleapiclient/http.py +++ b/googleapiclient/http.py @@ -32,7 +32,7 @@ import random import socket import time -import urllib +import urllib.parse import uuid import httplib2 diff --git a/googleapiclient/model.py b/googleapiclient/model.py index dee1cb7f377..52363e79b20 100644 --- a/googleapiclient/model.py +++ b/googleapiclient/model.py @@ -26,7 +26,7 @@ import json import logging import platform -import urllib +import urllib.parse import warnings from googleapiclient import version as googleapiclient_version