:arrow:
ListView for http://www.google.com/movies
Code:
#SingleInstance, Force
Gui, Font, S9, Arial
Gui, Add, ListView, w675 r30 +Grid, Theater|Movie|Detail|Timing
LV_ModifyCol(1,"150"), LV_ModifyCol(2,"200"), LV_ModifyCol(3,"100"), LV_ModifyCol(4,"200")
Gui, Show,, Google/Movies - Downloading Please wait....
htmf := A_Temp "\GoogleMovies.htm", City := "Chennai"
UrlDownloadToFile, http://www.google.com/movies?near=%city%&num=1000, %htmf%
FileRead, htm, %htmf%
Gui, Show,, Google/Movies - Now Showing in %City%
While tData := StrX( htm, "<div class=theater>",N,0, "<p class=clear></div>",1,0, N ) {
Theater := StrX( tData, "<span dir=ltr>",1,14, "</span>",1,7, T )
While mData := StrX( tData, "<div class=movie>",T,0, "</div></div>",1,0, T ) {
Movie := StrX( mData, "<span dir=ltr>",1,14, "</span>",1,7 )
Detail := Chr(1) . UnHTM( StrX( mData, "<span class=info>",1,17, "<",1,1 ) )
Timing := UnHTM( StrX( mData, "<div class=times>",1,17, "<",1,1 ) )
Loop, Parse, Detail, % Chr(1), %A_Space%-
Detail := A_LoopField
LV_Add( "", Theater, Movie, Detail, Timing )
}}
Return ;; / end of auto-execute section //
StrX( H, BS="",BO=0,BT=1, ES="",EO=0,ET=1, ByRef N="" ) { ; | by Skan | 19-Nov-2009
Return SubStr(H,P:=(((Z:=StrLen(ES))+(X:=StrLen(H))+StrLen(BS)-Z-X)?((T:=InStr(H,BS,0,((BO
<0)?(1):(BO))))?(T+BT):(X+1)):(1)),(N:=P+((Z)?((T:=InStr(H,ES,0,((EO)?(P+1):(0))))?(T-P+Z
+(0-ET)):(X+P)):(X)))-P) ; v1.0-196c 21-Nov-2009 www.autohotkey.com/forum/topic51354.html
}
UnHTM( HTM ) { ; Remove HTML formatting / Convert to ordinary text by SKAN 19-Nov-2009
Static HT ; Forum Topic: www.autohotkey.com/forum/topic51342.html
IfEqual,HT,, SetEnv,HT, % "ááââ´´ææàà&ååãã&au"
. "mlä&bdquo„¦¦&bull•ç縸¢¢&circˆ©©¤¤&dagger†&dagger‡°"
. "°÷÷ééêêèèððëë&euro€&fnofƒ½½¼¼¾¾>>&h"
. "ellip…ííîî¡¡ìì¿¿ïï««&ldquo“&lsaquo‹&lsquo‘<<&m"
. "acr¯&mdash—µµ··  &ndash–¬¬ññóóôô&oeligœòò&or"
. "dfªººøøõõöö¶¶&permil‰±±££"""»»&rdquo”®"
. "®&rsaquo›&rsquo’&sbquo‚&scaronš§§­¹¹²²³³ßßþþ&tilde˜&tim"
. "es×&trade™úúûûùù¨¨üüýý¥¥ÿÿ"
TXT := RegExReplace( HTM,"<[^>]+>" ) ; Remove all tags between "<" and ">"
Loop, Parse, TXT, &`; ; Create a list of special characters
L := "&" A_LoopField ";", R .= (!(A_Index&1)) ? ( (!InStr(R,L,1)) ? L:"" ) : ""
StringTrimRight, R, R, 1
Loop, Parse, R , `; ; Parse Special Characters
If F := InStr( HT, A_LoopField ) ; Lookup HT Data
StringReplace, TXT,TXT, %A_LoopField%`;, % SubStr( HT,F+StrLen(A_LoopField), 1 ), All
Else If ( SubStr( A_LoopField,2,1)="#" )
StringReplace, TXT, TXT, %A_LoopField%`;, % Chr(SubStr(A_LoopField,3)), All
Return RegExReplace( TXT, "(^\s*|\s*$)") ; Remove leading/trailing white spaces
}
GuiClose:
GuiEscape:
ExitApp