Webbsida skrapning via Linux. (12 / 16 steg)
Steg 12: Instructable scounts del 2
Notis: Becuase Instrucables har förändrat deras webb sidor igen, detta instructable inte kommer att fungera. Jag jobbar på en lösning.
I sist instructable vi visas bara data. Nu kommer vi att ändra koden och sedan använda kod för att få data och räkningarna för att importera till ett kalkylblad. Ledsen jag inte använda en ikon. Du kan göra.
Originaldata:
idata: (inte göra inte typ i "[data]" eller / [data] eller du kommer att få ett fel)
[data]
[/ data}
Nu har vi en modifierad program:
gidata2ss.sh:
[code]
#================================
#
# Instructablesnumbers catcher
#
#=================================
# Uppdrag
# --------------------------------
szAnswer = $(zenity--filval--title = "Välj en iurl fil att läsa")
datafile = $szAnswer
Outfile = "inumdata"
# datum
tmon = $(datum + "%b")
tday = $(datum + "%d")
ECHO "synpunkter för $dj på $tmon $tday:" > $outfile
#=================================
#
# Indata
#---------------------------------
medan Läs linje
göra theurl = $line
# avkommentera följande rad om du vill se den url och utsikt över eller
ECHO "$theurl"
# få totala visningar
# elinks "$theurl" | grep "Total utsikt"
# få all info
# elinks "$theurl" | grep visningar
# få bara siffror
elinks "$theurl" | grep -m 1 "totala visningar" | skär -c 16-25 | sed, \,,, g' >> $outfile
gjort < $datafile
zenity--text-info--filnamn = $utfil
[/code]
Kör programmet att hämta data.
Starta nya kalkylblad.
Kopiera och klistra in siffror i kalkylblad (Använd fast med och särskilda nummer)
Lägga till kolumnrubriker
Kopiera klistra in Webbadressen (med fast längd.)
Spara och gjort.
Med en kort film för att visa hur det fungerar.
Uppdatering:
Skrev en ny version av skriptet och det bör fungera bättre.
[code]
#================================
#
# Instructablesnumbers catcher
#
#=================================
# Uppdrag
# --------------------------------
szAnswer = $(zenity--filval--title = "Välj en iurl fil att läsa")
datafile = $szAnswer
Outfile = "inumdata"
# datum
tmon = $(datum + "%b")
tday = $(datum + "%d")
ECHO "synpunkter för $dj på $tmon $tday:" > $outfile
#=================================
#
# Indata
#---------------------------------
medan Läs linje
göra theurl = $line
ECHO "$theurl"
# echo -n "$theurl" ">> $outfile
# få totala visningar
curl -s "$theurl" | grep -m 1 "hits-räkna" | sed's / [^ 0-9] * / / g' >> $outfile
gjort < $datafile
zenity--text-info--filnamn = $utfil
[/code]
-----------------------------------------------------------------------------
Partiell temp fix
#================================
#
# Instructablesnumbers catcher
#
#=================================
# Uppdrag
# --------------------------------
szAnswer = $(zenity--filval--title = "Välj en iurl fil att läsa")
datafile = $szAnswer
Outfile = "inumdata"
Total = 0
# datum
tmon = $(datum + "%b")
tday = $(datum + "%d")
ECHO "synpunkter för $dj på $tmon $tday:" > $outfile
#=================================
#
# Indata
#---------------------------------
medan Läs linje
göra theurl = $line
ECHO "$theurl"
# echo -n "$theurl" ">> $outfile
# få totala visningar
# count = $(elinks "$theurl" | grep -m 1 "hits-count" | sed ' s/[^0-9]*//g')
count = $(elinks "$theurl" | grep -m 1 "visningar" | sed ' s/[^0-9]*//g')
# Låt totalt = $totalt + $count
ECHO "$count" >> $outfile
gjort < $datafile
# echo "totala: $total" >> $outfile
zenity--text-info--filnamn = $utfil
--------------------------------------------------------------
Ännu en annan Temporär fix.
Medan looged i:
#================================
#
# Instructablesnumbers catcher
#
#=================================
# Uppdrag
# --------------------------------
szAnswer = $(zenity--filval--title = "Välj en iurl fil att läsa")
datafile = $szAnswer
Outfile = "inumdata"
Total = 0
# datum
tmon = $(datum + "%b")
tday = $(datum + "%d")
ECHO "synpunkter för $dj på $tmon $tday:" > $outfile
#=================================
#
# Indata
#---------------------------------
medan Läs linje
göra theurl = $line
ECHO "$theurl"
# echo -n "$theurl" ">> $outfile
# få totala visningar
# count = $(elinks "$theurl" | grep -m 1 "hits-count" | sed ' s/[^0-9]*//g')
count = $(elinks "$theurl" | grep -m 1 "visningar" | sed ' s/[^0-9]*//g')
# Låt totalt = $totalt + $count
ECHO "$count" >> $outfile
gjort < $datafile
# echo "totala: $total" >> $outfile
zenity--text-info--filnamn = $utfil
=======================================================
Få favoriter genom:
#================================
#
# Instructablesnumbers catcher
#
#=================================
# Uppdrag
# --------------------------------
szAnswer = $(zenity--filval--title = "Välj en iurl fil att läsa")
datafile = $szAnswer
Outfile = "inumdata"
Total = 0
# datum
tmon = $(datum + "%b")
tday = $(datum + "%d")
ECHO "synpunkter för $dj på $tmon $tday:" > $outfile
#=================================
#
# Indata
#---------------------------------
medan Läs linje
göra theurl = $line
ECHO "$theurl"
# echo -n "$theurl" ">> $outfile
# få totala visningar
# count = $(elinks "$theurl" | grep -m 1 "hits-count" | sed ' s/[^0-9]*//g')
count = $(elinks "$theurl" | grep -m 1 "favoriter" | sed ' s/[^0-9]*//g')
# Låt totalt = $totalt + $count
ECHO "$count" >> $outfile
gjort < $datafile
# echo "totala: $total" >> $outfile
zenity--text-info--filnamn = $utfil