Mostrando entradas con la etiqueta scrap. Mostrar todas las entradas
Mostrando entradas con la etiqueta scrap. Mostrar todas las entradas

28 de enero de 2022

Simple Web Scraper for Linux command line


 The Steps:

[1] download web text --->
[2] Select target text     --->
[3] Clean scraped text  --->
[4] Present result          --->
[5] Enjoy.


The System setup:

# aptitude install lynx

 

The Code:

    #!/bin/bash
    ##########################################
    # by www.misnotaslinux.blogspot.com 2022 #
    ##########################################

    url="https://PutWebUrlHere.html"

    from='Put here your starting text scrap from the web'

    to='Put here the End text of scraped text'

    web_scrap=`lynx -dump "$url" | sed -n /"$from"/,/"$to"/p | grep -v "$from" | grep -v "$to" | grep -v "*" | grep -v "_" | grep -v "^$"`

    echo "$web_scrap"

    exit 0


The Comments:

[1] El script descarga la web indicada en $url, en modo texto con lynx.

[2] Usando sed el script scrapea el texto de la web desde la cadena de texto $from hasta $to.

[3] Se limpia es texto scrapeado grep de las cadenas de texto $from y $to, así como de los caracteres no deseados: ("*", "_") y líneas en blanco ("^$"). 

Para identificar las cadenas de inicio y final del texto buscado hay que revisar previamente el texto generado por lynx de la web objetivo:

    $ lynx -dump "https://PutYourWebUrlHere.html"

Las cadenas de inicio y final deben ser lo más específicas posible, que no se repitan en el cuerpo del texto objetivo.

[4] Revisar el resultado y añadir | grep -v "cadena o caráctercon las cadenas o caracteres que queremos eliminar del texto resultante [5].