Přejít k hlavnímu obsahu

Parsování webové stránky do .csv

 /root/parsuj/parser.sh#!/bin/bash
#

directory="/root/prog/www.nejaky_obchod.cz/"

wget http://www.nejaky_obchod.cz -r -m -c -R jpg,gif,bmp,png,swf,?print --user-agent="Mozilla/5.0 (X11; U; Linux i686; rv:1.7.3) Gecko/20040911 Firefox/0.10" # -P ./www.nejaky_obchod.cz

for soubor in $( find $directory -type f -name '*?print' )
do
  echo $soubor
  rm $soubor
done

rm ./output.txt
for soubor in $( find $directory -type f -name '*' | sort )
  do
    echo $soubor
    if  cat $soubor | grep --binary-files=text "<div class='dpEx2" >>/dev/null; then
      cat $soubor | grep --binary-files=text '<meta property="og:title" content="' >> ./output.txt
      cat $soubor | grep --binary-files=text "<div class='freetext'>" >> ./output.txt
      cat $soubor | grep --binary-files=text "<div class='dpEx2" >> ./output.txt
      if cat $soubor | grep --binary-files=text "<div class='dpEx1" >>/dev/null; then
        cat $soubor | grep --binary-files=text "<div class='dpEx1" >> ./output.txt
        else
        echo "<div class='dpEx1'><span>0&nbsp;Kč</span> Před slevou</div>" >> ./output.txt
      fi
      cat $soubor | grep --binary-files=text '<meta property="og:url" content=' >> ./output.txt
    fi
  done

sed -f sablona_1.sed output.txt >> output_1.txt

perl -0pe 's/[\n\r]//g' < ./output_1.txt > ./output_2.txt
perl -0pe 's/[@][@]/\n/g' < ./output_2.txt > ./output_3.txt
perl -0pe 's/[ ][@]/;/g' < ./output_3.txt > ./output.csv
perl -0pe 's/[@]/;/g' < ./output_3.txt > ./output.csv

rm ./output_1.txt
rm ./output_2.txt
rm ./output_3.txt

/root/parsuj/sablona_1.sed
s/<meta property="og:title" content="\([ a-zA-Z0-9_ˇ´\Ž\ž]*\)[ a-zA-Z.-+%0-9\Ž\ž]*[\"][ \t][\/][\>]/\1@/g

s/[ \t]*<div class='dpEx2'>Cena: <span>\([ \t0-91 ]*\)\&nbsp\;<small>Kč<\/small><\/span>/@\1@/g			# Kč po slevě
s/<div class='dpEx1'><span>\([ \t0-9 ]*\)&nbsp;Kč<\/span> Před slevou<\/div>/\1@/g				# Kč před slevou
s/<meta property="og:url" content="\(http:\/\/www\.nejaky_obchod\.cz[a-zA-Z0-9.-=_~\/\?]*\)[\"][ \t][\/][>]/\1@@/g	# URL

s/[ \t]*<div class='freetext'>//g
s/<\/div>//g
s/<\/p>//g
s/<p>//g
s/<\/strong> <br \/>//g
s/<\/strong>//g
s/<strong>//g
s/\;/,./g
https://p.kallus.cz/navody/Regulární výrazy

Štítky

x

 

 

Zde mi můžete zanechat zprávu: 
https://p.kallus.cz/contact/feedback