Jump to content
Sign in to follow this  
Svrij22

Admob Desktop Widget

Recommended Posts

Svrij22

Hello Autoit,

I recently made a cool little program that I wanted to share with you guys. I don't know if any of you has Admob, but if you do, this program automatically logs all your data and estimates how much you will make this day or month.

Current Features:

*Writes Log

*Average per Hour

*Estimated Month

*Estimated Day

Here's how it works: It opens an IE page, then reads all the text and splits it in an array, then filters the numbers and then calculates all the estimations.

 

I hope some of you will use this

 

Code:

#include <GUIConstantsEx.au3>
#include <IE.au3>
#include <WindowsConstants.au3>
#include <MsgBoxConstants.au3>
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <Date.au3>
#Include <GuiEdit.au3>
HotKeySet ("^g", "show")
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Admob Widget", 430, 230, 0, 0)
$Label1 = GUICtrlCreateLabel("Today:", 8, 8, 80, 17)
$Label2 = GUICtrlCreateLabel("Yesterday", 8, 24, 80, 17)
$Label3 = GUICtrlCreateLabel("This Month:", 8, 40, 80, 17)
$Label4 = GUICtrlCreateLabel("Previous Month:", 8, 56, 80, 17)
$Label4 = GUICtrlCreateLabel("Estimated Today:", 8, 72, 185, 17)
$Label4 = GUICtrlCreateLabel("Estimated Month:", 8, 88, 185, 17)
$Label4 = GUICtrlCreateLabel("Average/Hour:", 8, 104, 185, 17)
$state = GUICtrlCreateLabel("State: Logging In", 8, 194, 185, 17)
$sleep = GUICtrlCreateCheckbox("Slow mode", 90, 150, 90, 17)
$Label4 = GUICtrlCreateLabel("Graph Height:", 8, 152, 80, 17)
$Input1 = GUICtrlCreateInput("100", 8, 168, 121, 21)
$Label22 = GUICtrlCreateLabel("v3.8", 140, 174, 121, 21)
$Label5 = GUICtrlCreateLabel("???", 112, 8, 100, 17)
$Label6 = GUICtrlCreateLabel("???", 112, 24, 100, 17)
$Label7 = GUICtrlCreateLabel("???", 112, 40, 100, 17)
$Label8 = GUICtrlCreateLabel("???", 112, 56, 100, 15)
$Label9 = GUICtrlCreateLabel("???", 112, 72, 100, 15)
$Label10 = GUICtrlCreateLabel("???", 112, 88, 100, 15)
$Label11 = GUICtrlCreateLabel("???", 112, 104, 100, 15)
$SmartAvg = GUICtrlCreateCheckbox("Smart Average", 8, 210, 100, 17)
$Button1 = GUICtrlCreateButton("View Log", 8, 120, 75, 25)
$Button2 = GUICtrlCreateButton("Hide", 90, 120, 75, 25)

$editctrl = GUICtrlCreateEdit("", 185, 8, 240, 215, $ES_AUTOVSCROLL + $ES_AUTOHSCROLL)
GUISetState(@sw_SHOW)

#EndRegion ### END Koda GUI section ###

;Starting Log
$NowTime = string (_NowCalc())
$hFileOpen = FileOpen("Log.txt", $FO_APPEND)
FileWrite($hFileOpen,$NowTime & " <--- Started (Widget by Svrij22)--->" & @crlf)

$Ai = 0
$Aval = 0
$Avalp = 0

global $log = ""

CheckLogin()
Refresh()

$i=0
$imax = 300

While 1

$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
$sTxtFileDir = @scriptdir & "\Log.txt"
Run ( "notepad.exe " & $sTxtFileDir, @windowsdir, @sw_MAXIMIZE )
Case $Button2
MsgBox ("","","Press CTRL-G To show again")
GUISetState(@sw_hide)
EndSwitch
sleep (60)
$i+=1
if $i>$imax Then
Refresh()
$i=0
EndIf
GUICtrlSetData ($state, "State: Idle "&$i)

if GUICtrlRead($sleep) = $GUI_CHECKED Then
$imax = 900
Else
$imax = 300
EndIf

WEnd

func show()
GUISetState(@sw_SHOW)
EndFunc



Func CheckLogin()
Local $oIE = _IECreate("apps.admob.com", 0, 0, 0)
_IELoadWait($oIE)
sleep (4000)
Local $sText = _IEBodyReadText($oIE)
if StringInStr ($sText,"MONETIZE") Then
GUICtrlSetData ($state, "State: Logged In Succesfully")
sleep (150)
Else
MsgBox ("","","Failed to Retrieve Data. Please Login to your Admob account on Internet Explorer")
$oIE = _IECreate("apps.admob.com",0,1,1)
_IELoadWait($oIE)
WinClose($Form1)
GUICtrlSetData ($state, "State: Error 403")
EndIf
EndFunc

Func Refresh()
GUICtrlSetData ($state, "State: Connecting")
Local $oIE = _IECreate("apps.admob.com", 0, 0, 0)
_IELoadWait($oIE)
sleep (4000)
GUICtrlSetData ($state, "State: Getting Data")
Local $sText = _IEBodyReadText($oIE)
If StringInStr ($sText,"Yesterday") Then ; TEST CONNECTION
$sText = StringRegExpReplace($sText, " ", "")
$sText = StringRegExpReplace($sText, "[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ]", "")
$sText = StringRegExpReplace($sText, @crlf, "")
$sText = StringRegExpReplace($sText, @cr, "")
$sText = StringRegExpReplace($sText, @lf, "")
$aSplit = StringSplit($sText, "€")
_IEQuit($oIE)
;setdata
$sToday = $aSplit[2]
$sYes = $aSplit[3]
$sTM = $aSplit[4]
$sPM = $aSplit[5]
$sPM = StringTrimRight ($sPM,29)
GUICtrlSetData ($Label5,$sToday&" € Euro")
GUICtrlSetData ($Label6,$sYes&" € Euro")
GUICtrlSetData ($Label7,$sTM&" € Euro")
GUICtrlSetData ($Label8,$sPM&" € Euro")


GUICtrlSetData ($state, "State: Getting Date")
sleep (150)
;Get Date
$sTime2 = string (_NowTime())
$sTime2 = StringTrimRight ($sTime2,3)
$sTime2 = StringReplace ($sTime2,":",".")
$sTime2 = Number ($sTime2)
if $sTime2 > 10 Then
$sDate = @mday
Else
$sDate = @mday-1
EndIf


GUICtrlSetData ($state, "State: Calculating Month Estimation")
sleep (150)
;Calculate Month Estimation
$sAvg = $sTM/$sDate
$sAvg = $sAvg*31
$sAvg = Round ($sAvg,2)
$sAvg = string ($sAvg)
GUICtrlSetData ($Label10,$sAvg&" € Euro")


GUICtrlSetData ($state, "State: Writing Ini for GM Graph")
sleep (150)
;Write ini for GM Graph
$hFileOpen = FileOpen("graph.txt", 2)
FileWrite($hFileOpen,"[graph]" & @crlf)
FileWrite($hFileOpen,"val="&$sToday& @crlf)
FileWrite($hFileOpen,"hei="& GUICtrlRead ($Input1) & @crlf)
FileWrite($hFileOpen,'date="'& string (_NowTime()) &'"'& @crlf)


GUICtrlSetData ($state, "State: Calculating Time")
sleep (150)
;Calculate Time again??
$sTime = string (_NowTime())
$sTime = StringTrimRight ($sTime,3)
$sTime = StringReplace ($sTime,":",".")
$sTime = Number ($sTime)

if $sTime > 10 Then
$sTime -= 10
Else
$sTime += 14
EndIf


GUICtrlSetData ($state, "State: Calculating Average/Hour")
sleep (150)
;Calculate Average/Hour
$sAvgT = $sToday/$sTime
$sAvgT = round ($sAvgT,2)
GUICtrlSetData ($Label11,$sAvgT&" € Euro")


GUICtrlSetData ($state, "State: Calculating Hours Passed")
sleep (150)
;Calculate hours passed
$sTime = string (_NowTime())
$sTime = StringTrimRight ($sTime,3)
$sTime = StringReplace ($sTime,":",".")
$sTime = Number ($sTime)

if $sTime > 10 Then
$sTime -= 10
Else
$sTime += 14
EndIf

GUICtrlSetData ($state, "State: Calculating Day Estimation")
sleep (150)
;Calculate Daily
$sToday = Number ($sToday)
$sEsti = ($sToday/$sTime)*24
$sEsti = round($sEsti,2)
GUICtrlSetData ($Label9,"~"+string($sEsti)&" € Euro")
$NowTime = string (_NowCalc())
$NowTime = string (_NowCalc())


GUICtrlSetData ($state, "State: Calculating Smart Average")
sleep (150)
;SmartAvg Begin
GUICtrlSetData ($state, "State: Calculating Smart Average")
sleep (600)
if GUICtrlRead($SmartAvg) = $GUI_CHECKED Then
$Aval += $sEsti
$Ai+=1
$Avalp = ($Aval/$Ai)*0.85
$sEsti = $Avalp
GUICtrlSetData ($Label9,$Avalp&" € Euro")
EndIf
;SmartAvg End

GUICtrlSetData ($state, "State: Writing Log")
sleep (150)
;Write Log
$hFileOpen = FileOpen("Log.txt", $FO_APPEND)
FileWrite($hFileOpen,$NowTime & " Earnings: " & $sToday & " Avg/Hour: " & $sAvgT & " Estimated Earnings: Today: " & $sEsti & " This month:" & $sAvg & @crlf)



GUICtrlSetData ($state, "State: Calculating GUI Log")
sleep (150)
;Calc gui log
$log=$log & string (_NowTime()) & " E: " & $sToday & " A/H: " & $sAvgT & " ET: " & $sEsti & @CRLF
GUICtrlDelete ($editctrl)
$editctrl = GUICtrlCreateEdit("", 185, 8, 240, 215, $ES_AUTOVSCROLL + $ES_AUTOHSCROLL)
_GUICtrlEdit_InsertText($editctrl,$log)

GUICtrlSetData ($state, "State: Closing IE")
sleep (150)
;Close IE
ProcessClose ("iexplore.exe")
ProcessClose ("iexplore.exe")


Else
GUICtrlSetData ($state, "State: Failed to Retrieve Data")
EndIf

GUICtrlSetData ($state, "State: Cleaning")
sleep (500)
GUICtrlSetData ($state, "State: Idle")
EndFunc

(Sorry if my code isn't so advanced and crappy)

Edited by Svrij22

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Similar Content

    • mar3011
      By mar3011
      hello, I want to set in the inputbox field random key from the keyboard to which the function will be assigned, for example F4 function start notepad ALT + A function start notepad for one function. Thank you for any help.  
    • JuanFelipe
      By JuanFelipe
      Cambiar a español Hello friends, I need help with a problem I have, I want to know if there is any way to update a GUI already running, that is I have a GUI of a certain size and with a button I would like to enlarge it:
      example: $ form1 = GUICreate ("", 200,100,0,0)   When you press the button, the gui increases its size, and actuates the new size.
    • BogdanNicolescu
      By BogdanNicolescu
      While 1 / / / A whole bunch of codes found in help and here: https://www.autoitscript.com/autoit3/docs/ / / / WEnd OR:

       
      HotKeySet("{ESC}", "Terminate") While 1 MouseClick("Right",674,422) MouseClick("Left",673,447) Sleep(2000) / / / A whole bunch of codes found in help and here: https://www.autoitscript.com/autoit3/docs/ / / / MouseClick("Left",675,339) SLeep(3000) WEnd Func Terminate()     Exit 0 EndFunc  
      Sorry if i should't let this here to be found by newbies like me -.-'
    • santoshM
      By santoshM
      Dear friends i am facing a problem , i have created a window in autoit some time it is moving with the mouse curser even if iam not clicking the window 
    • sumanth1980
      By sumanth1980
      Here i am wrote a simple lines to install basic applications but when i clicked on one application/program to install it was working fine but when i cancel the program in the middle to install another program it was not working. I am not an expert in this but i want a solution for this ... Can any one help me on this....
      ORG-1.au3
×