如何记录脚本
❶ 游戏里的挂机脚本一般都是怎么写的
写过一些简单游戏的挂机脚本,比如宝宝斗场挂机脚本,赚了一点小钱,不敢在这高手云集的地方称大虾,仅仅是想和大家交流。
自己写脚本一开始很痛苦,不过写多了以后,很多游戏的子程序、函数都是可以借鉴的,甚至可以直接复制粘贴过来使用,所以后面越写越快。最后就是设计思路和编程习惯了,良好的编程习惯对脚本运行的流畅程度、降低BUG发生率有很大影响。好了说说我的体会
1、多用函数,少用子程序,模块化:如果一个游戏是频繁的点击鼠标操作,那么需要建立一些函数来进行这些操作。我比较喜欢用函数而不用子程序。为什么呢?因为函数有返回值,子程序没有。我可以让电脑做一项操作,但是操作的结果如何我不知道,这就需要返回值。比如找图,找到了没有呢?这个任务完成没有呢?等等
2、关于找图,每个图用两个以上函数判断。因为游戏经常会改动的,有些游戏会经常对图色做细微的修改,肉眼看不出来,但是找图就找不到了,这个方法可以尽量减少出错。
3、尽量少用死循环,坚决不用GOTO。我建议死循环只用在大的地方,如整个主线程,整个子线程。局部尽量用for x代替或者do while。如果局部一定要写死循环,一定多加一些退出循环的判断,同时加上运行循环的时间限制(循环开始前用t1=time记录时间,然后在循环里用datediff判断循环消耗的时间)。
4、记录:用ini文件记录发生的事件,包括任务是否完成,脚本运行情况,是否出错方便以后查找修改。记录鼠标点击坐标,因为大家喜欢用一种分辨率以后不会经常调的,一次成功找图后鼠标点击坐标会记录下来,下次如果找不到图了可以尝试调用原来记录的坐标进行点击(不管你图怎么改,我还是有办法),并且鼠标坐标周围适当范围予以截图保存,方便以后处理。
5、监控:可以让按键精灵向邮箱发邮件,也可以用teamview等远程控制软件,有钱的话也可以考虑买ip kvm(我目前的愿望,但是没米)。
6、销售:如果脚本不是很完善或者游戏更新很快,一定要勤快一点。不要对游戏更新感到烦人,只要函数写的好,更新游戏只要加点图,改几条语句就可以了,而你的客户需要经常依赖你,不管你收钱不收钱,他需要长期与你保持联系,这样你的生意自然会越来越好。
❷ 如何在按键精灵手机版的自带界面上实现记录一段脚本的执行次数。
'创建一个名称为"layout1"的布局控件
UI.Newlayout ("layout1")
'添加一个名称为"运行次数",初始内容为"1"的文字框控件
UI.AddTextView("layout1", "运行次数","1")
'上面代码放脚本开头,如果你有已设定的界面窗口把上面代码去除,记得把文字框改为运行次数,布局控件名称做相应修改就行了
'此处放你的代码
'下面代码放脚本末尾
'获得运行次数文字框的内容然后修改文字框内容为之前的值+1
UI.SetText("运行次数",UI.GetText("运行次数")+1)
'显示名称为:"layout1" 的布局控件
UI.Show ("layout1")
❸ 如何记录python脚本的
index=True
while index:
score=input("请输入学生成绩(1-100,输入q退出程序):")
try:
if str(score)=="q":
index=False
else:
if int(score)>90 and int(score)<=100:
print "A"
elif int(score)>80 and int(score)<=90:
print "B"
elif int(score)>70 and int(score)<=80:
print "C"
elif int(score)>=60 and int(score)<=70:
print "D"
elif int(score)<60 :
print "E"
else:
print "请输入正确的成绩!"
except:
print "请输入正确的标识符!"
❹ 按键精灵编了一个脚本,怎么样才能记录这个脚本运行一共要花多少时间呢要精确到豪秒,谢谢
开头一句time1 = Plugin.Sys.GetTime()
结尾一句time2 = Plugin.Sys.GetTime()
time2-time1就是你要的时间
❺ 如何做到线程数和磁盘io实时记录下来的脚本
#!/bin/bash
device_name=(`df -lh |grep "^/dev/sd"|awk '{print $1}'`)
mount_dir=(`df -lh |grep "^/dev/sd"|awk '{print $6}'`)
#echo ${device_name[@]}
#echo ${mount_dir[@]}
num=${#device_name[@]}
#echo $num
for ((i=0;i<=$num-1;i++));
do
touch ${mount_dir[$i]}/file1
if [ $? -eq 0 ]
then
echo -e "\e[32m${device_name[$i]} is OK\e[0m"
else
echo -e "\e[31m${device_name[$i]} is error\e[0m"
fi
rm -rf ${mount_dir[$i]}/file1
done
~
这是一个检查磁盘好坏的脚本,是我线上用的,但我没写到计划任务里,只是偶尔检查一下磁盘,祝你成功
❻ 如何利用selenium 录制脚本
下面将演示Selenium的使用:
1.安装Selenium IDE,Firebug。
2.启动Selenium IDE:
IDE启动后,弹出如下对话框:
上图标明了一些Selenium IDE的主要功能。其中,由Command,Target,Value组成的表格就是脚本,每个脚本都是由一条一条的Action(行为)组成,而每个Action又由(Command,Target,Value)三者组成。Command就是上文《API参考手册》提到的内容,Target指的是Web中的某个对象,比如:文字,输入框等等,如果选取对象呢?呵呵,这里就用到了XPath,不熟悉可以参考《XPath的使用》,而Value就是这个对象的值。
3.脚本的录制及运行
当弹出上面的IDE窗口后,我们就可以开始Selenium的脚本录制了,右上角有个红色的圆点,当它下按时(如上图)就表示IDE正在进行脚本录制。OK,开始录制,录制的时候,直接操作Firefox浏览器窗口就可以了,IDE会自动记录你的操作的,下面我演示一个例子:
上图例子中,我的操作步骤如下:
(1).在地址栏输入:http://www..com/
(2).登陆网络首页后,在查询框输入“hyddd”。
(3).按“网络一下”按钮
(4).进入搜索结果页面后,右键单击第一条记录(即:hyddd - 博客园),在右键弹出菜单中,单击“Verify TestPersent hyddd - 博客园”。
(5).单击第一条记录(即:进入hyddd - 博客园)
(6).Firefox弹出一个新Tab页面,并进入了我的博客。
OK,现在看看我们的Selenium IDE录制的结果吧:>
上图中,中间的表格就是录制的结果,你可以按“运行脚本”重新回放脚本看看,值得注意的是,在运行时,Firefox可能会认为脚本中最后一个操作(即:步骤6)为非法弹出框,浏览器会自动阻止其弹出,这个需要设置一下Firefox,具体位置是:Firefox->Menubar->Tools->options->content->Block pop-up Window,你可以把钩去掉或者在Exceptions里面添加相应的网址。
恩,到此为止,脚本录制圆满完成:>
在运行脚本后,你会发现IDE表格的颜色发生了变化,运行前,脚本表格为白色,成功运行完毕后,表格为青色,其中还分为深青色和浅青色两种,浅青色表示:动作成功,如:打开网页成功,点击按钮成功等等,而深青色表示:判断正确,如:“hyddd - 博客园”这段文字在页面中存在等等。
看完正确,现在我们看看出错时的情况吧。
出错时,表格可能会出现两种颜色,一种是浅粉红色,一种是深粉红色。浅粉红色表示判断结果为false,这种情况案例还是会继续执行下去,判断的失败不会影响案例的运行,深粉红色表示动作失败,如:没有找到按钮等(如上图),这种情况下案例会停止运行。
❼ python脚本怎么把实时数据记录下来
1.不修改数据库与系统结构,使用Python做个定时策略,每隔一段时间来执行【特定条件是否达到】的统计sql脚本。这种模式适用于数据量不多,或者每次执行的统计脚本时间短,或者实时性要求低的情况。 2.修改数据库,不改系统结构。那就是使用数据...
❽ sqlserver 如何用触发器记录更新某表的脚本
create TRIGGER [Trig_table_upt] ON [dbo].[table]
FOR INSERT, UPDATE
AS
if update(columnA)
begin
INSERT INTO Change_Log(changedate,operatetable,operatecol,operate,recordid,oldvalue,newvalue)
Select getdate(),'table','columnA','UPT','这里写个记录哪条记录的主键值',b.columnA,a.columnA
From Inserted a inner join deleted b on a.badge=b.badge
end
go
❾ 如何记录脚本运行的时间和循环的次数
这个有多种方法,脚本中一般把要保存的对象放入数组对象中,然后循环调用它,如果程序大了,又知道要调用到哪个,但知道一个明确的位子,就象你说的那样,而数组都有一个length属性,可以用它来计算你想要找的位置,或者用判断,
❿ 如何用变量记录和脚本实现整点记录数据
整点记录可以不用脚本编程实现,直接在WinCC中设置就可以。
打开WinCC变量记录,在“定时器”下双击“1小时”,选择“输入周期开始点”,在“分钟”和“秒”处输入0,其它不动。这样就设定了归档“小时”的定义是从每个小时的0分0秒开始的。
在归档变量的属性中选择采集周期和归档周期都为1小