# Busqueda PIP

El paquete pip y sus sucesores pip3, ya no permiten realizar busquedas usando `pip search`, y muestran el siguiente error:

```
ERROR: XMLRPC request failed [code: -32500]
RuntimeError: PyPI no longer supports 'pip search' (or XML-RPC search). 
Please use https://pypi.org/search (via a browser) instead. 
See https://warehouse.pypa.io/api-reference/xml-rpc.html#deprecated-methods for more information.

```

Debido a que en algunos servidores no disponemos de entorno gráfico y unicamente disponemos de un terminal, este proyecto personal es para poder buscar un paquete Python y además poder obtener información del mismo directamente desde la consola.

---

## Busqueda `pip_busca`

El programa `pip_busca` está escrito en Python y localiza en la bbdd de internet todos los paquetes que cumplan con la cadena de texto indicada en la busqueda.

```
pip_busca 

══════════════════════════════════════════════════════════════
Uso: pip_busca <cadena_busqueda>

Busca paquetes en PyPI cuyo nombre contenga la cadena indicada
Ejemplo: pip_busca ansi
══════════════════════════════════════════════════════════════
```

* Ejemplo: 
Buscar todos los modulos relacionado con `ansible`
Usaremos: `pip_busca ansible`:

![](imagenes/pip_busca.png)


## Información `pip_info`

El programa `pip_info` esta escrito en Bash y obtiene la información relevante del paquete indicado, el nombre debe de indicarse exactamente, ya que no realiza busquedas de paquetes.

> Si necesita localizar el paquete exacto deberá de usar *pip_busca*

```
/pip_info --help
════════════════════════════════════════════════════════════════════════════════
Uso: pip_info <nombre_paquete> [--all]

Opciones:
  --all     Muestra todas las versiones disponibles (incluye alphas, betas, etc.)

Por defecto, se muestran las últimas 10 versiones estables.
Nota: Se indica entre paréntesis la version de Python requerida
════════════════════════════════════════════════════════════════════════════════
```


* Ejemplo:
Obtener información del paquete/modulo `ansible`
Usaremos: `pip_info ansible`:

![](imagenes/pip_info.png)

---

## INSTALACIÓN

### Debian (y derivados) mediante .deb

1. Descargar el fichero `pipbusqueda.deb`
2. Cambiarse al directorio de descarga
3. Instalarlo: `sudo apt install ./pipbusqueda.deb`

### Manual

1. Descargar los ficheros `pip_busca` y `pip_info`
2. Poner permisos de ejecución: `chmod +x pip_busca pip_info`
3. Copiarlos a `/usr/local/bin/`: `sudo cp pip_* /usr/local/bin/`



