### Summary

Use of `pkg_resources` is [deprecated](https://github.com/pypa/setuptools/pull/3843) as of `setuptools` version [67.5.0](https://setuptools.pypa.io/en/stable/history.html#v67-5-0).

https://github.com/ansible/ansible/blob/0371ea08d6de55635ffcbf94da5ddec0cd809495/lib/ansible/modules/pip.py#L277-L284

### Issue Type

Feature Idea

### Component Name

pip module

"""Test whether a name is a vcs url or not."""
    return re.match(_VCS_RE, name)
def _is_venv_command(command):
    venv_parser = argparse.ArgumentParser()
    venv_parser.add_argument('-m', type=str)
    argv = shlex.split(command)
    if argv[0] == 'pyvenv':
        return True
    args, dummy = venv_parser.parse_known_args(argv[1:])
    if args.m == 'venv':
        return True
    return False
def _is_package_name(name):
    """Test whether the name is a package name or a version specifier."""
    return not name.lstrip().startswith(tuple(op_dict.keys()))
def _recover_package_name(names):
    """Recover package names as list from user's raw input.
    :input: a mixed and invalid list of names or version specifiers
    :return: a list of valid package name
    eg.
    input: ['django>1.11.1', '<1.11.3', 'ipaddress', 'simpleproject>1.1.0', '<2.0.0']
    return: ['django>1.11.1,<1.11.3', 'ipaddress', 'simpleproject>1.1.0,<2.0.0']
    input: ['django>1.11.1,<1.11.3,ipaddress', 'simpleproject>1.1.0,<2.0.0']
    return: ['django>1.11.1,<1.11.3', 'ipaddress', 'simpleproject>1.1.0,<2.0.0']
    """