开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 1310|回复: 9
收起左侧

[已解决] 关于判断循环的问题

 关闭 [复制链接]
结帖率:88% (138/156)
发表于 2018-6-24 00:04:19 | 显示全部楼层 |阅读模式   吉林省长春市
88精币
问题:我们要访问一个网站3次 来获取3个返回的ID  (每次访问间隔1秒)  3次访问的地址都是一样的(不能访问第四次 如果访问第四次肯定失败),每次访问以后返回来的文本也就是 获取到的ID 3次都是不一样的
不是每次访问网址都能获取到ID  如果获取不到ID就会返回一个空 就做一个判断 获取到的ID=空  就间隔1秒在访问一次 直到得到了 3个ID 并显示出来这3个ID  如果要是访问3次 每次都得到了ID那就更好了 直接显示这3个ID  为:第一次ID 第二次ID 第三次ID

返回文本=到文本(网页访问(XXXXXXXXXXXXXX))  ‘获取  ID的访问
获取到的ID =文本取中间文本(返回文本,#常量1,,#常量2)


然后我们得到这3个ID 分别访问

返回文本=到文本(网页访问(第一次ID))  ‘获取  当前状态的访问
当前状态一 =文本取中间文本(返回文本,#常量3,,#常量4)

返回文本=到文本(网页访问(第二次ID))  ‘获取  刷新状态的访问
当前状态二 =文本取中间文本(返回文本,#常量3,,#常量4)

返回文本=到文本(网页访问(第三次ID))  ‘获取  刷新状态的访问
当前状态三 =文本取中间文本(返回文本,#常量3,,#常量4)


我们在通过 3次访问ID 如上↑ (间隔800毫秒)可以得到 这3个ID的当前状态,其实上面的3次访问 可以理解为三次当前状态的刷新!(要一直访问这3个地址。。因为不一直访问刷新 取不到这三次ID的当前的状态 )

文本返回来的状态也就是  当前的状态一、和二、和三  有3种返回结果 分别是: 等待、失败、成功

如果返回的结果是等待   那么可以能网站还没有出来状态呢 就在继续等着 一般20秒左右就会出来 不存在一直等待的情况 最慢1分钟就反应过来了

如果返回的结果是失败   那么我们就删除这个ID(因为访问的时候已经把ID上传上去了 必须得删除掉

网页访问(删除ID))     ‘删除失败的ID                       然后我们在次的获取一个ID(失败一次就获取1次 失败2次就获取2次 (别忘了访问的时候间隔1秒))        返回文本=到文本(网页访问(XXXXXXXXXXXXXX))  ‘获取  ID的访问                                                  

如果返回的结果是成功   那么我们就不用管这个成功的了 直到3个都成功了  弄一个标签 一直显示3次的ID  和当前的状态   3次都成功就OK了

我语言表达能力有点弱见谅!应该就是多次判断循环的问题 我把问题说的详细一些方便大家看 麻烦各位表哥了上传一个小样源码~


最佳答案

查看完整内容

.版本 2 .局部变量 局_计次, 整数型 .局部变量 返回文本, 文本型 .局部变量 url, 文本型 .局部变量 状态码, 整数型 .循环判断首 (真) 返回文本 = 到文本 (网页_访问 (url)) 获取到的ID =文本取中间文本(返回文本,#常量1,,#常量2) 状态码 = 检测 (获取到的ID) .判断开始 (状态码 = 1) 局_计次 = 局_计次 + 1 .如果真 (局_计次 = 3) 跳出循环 () .如果真结束 ...

回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳
结帖率:94% (16/17)

签到天数: 7 天

发表于 2018-6-24 00:04:20 | 显示全部楼层   陕西省西安市
.版本 2

.局部变量 局_计次, 整数型
.局部变量 返回文本, 文本型
.局部变量 url, 文本型
.局部变量 状态码, 整数型



.循环判断首 (真)
    返回文本 = 到文本 (网页_访问 (url))
    获取到的ID =文本取中间文本(返回文本,#常量1,,#常量2)
    状态码 = 检测 (获取到的ID)
    .判断开始 (状态码 = 1)
        局_计次 = 局_计次 + 1
        .如果真 (局_计次 = 3)
            跳出循环 ()
        .如果真结束

    .默认
        到循环尾 ()
    .判断结束

    程序_延时 (1)
    系统_处理事件 ()
.循环判断尾 ()

.子程序 检测, 整数型
.参数 获取到的ID

返回文本=到文本(网页访问(获取到的ID))  ‘获取  当前状态的访问
当前状态一 =文本取中间文本(返回文本,#常量3,,#常量4)

.判断开始 (当前状态一=成功)
    返回 (1)
.判断 (当前状态一=等待)
    程序_延时 (20000)
    检测 (获取到的ID)
.判断 (当前状态一=失败)
    返回 (2)
.默认

.判断结束



补充内容 (2018-6-24 01:54):
有两种思路,如下,
1.用计次循环获得3个ID,然后当作形参传入检测线程,检测返回成功就暂停,失败就继续创建新id,等待就延迟
2.代码一次写完。然后多次执行,执行到3次都成功就暂停
3.用循环判断首(看上面)

评分

参与人数 1荣誉 +1 收起 理由
笨潴 + 1 热心帮助他人,荣誉+1,希望继续努力(*^__^*) 嘻嘻!

查看全部评分

回复

使用道具 举报

结帖率:88% (138/156)

签到天数: 14 天

 楼主| 发表于 2018-6-24 00:11:55 | 显示全部楼层   吉林省长春市
网页访问(删除ID))     ‘删除失败的ID                       然后我们在次的获取一个ID(失败一次就获取1次 失败2次就获取2次 (别忘了访问的时候间隔1秒))        返回文本=到文本(网页访问(XXXXXXXXXXXXXX))  ‘获取  ID的访问   然后 在次等待这个状态是什么

返回文本=到文本(网页访问(失败重试的ID))  ‘获取  失败重试
失败重试ID状态 =文本取中间文本(返回文本,#常量3,,#常量4)


回复

使用道具 举报

结帖率:77% (17/22)

签到天数: 11 天

发表于 2018-6-24 00:13:29 | 显示全部楼层   浙江省嘉兴市
你说了第4次访问一定失败的,所以如果有一次取回的文本是 空  ,那第4次的访问也没有什么意义了,.
回复

使用道具 举报

结帖率:88% (138/156)

签到天数: 14 天

 楼主| 发表于 2018-6-24 00:14:21 | 显示全部楼层   吉林省长春市
走一回 发表于 2018-6-24 00:13
你说了第4次访问一定失败的,所以如果有一次取回的文本是 空  ,那第4次的访问也没有什么意义了,.

因为只能访问3次 如果失败了 当你 网页访问(删除)后 还可以访问啊
回复

使用道具 举报

结帖率:88% (138/156)

签到天数: 14 天

 楼主| 发表于 2018-6-24 00:16:32 | 显示全部楼层   吉林省长春市
走一回 发表于 2018-6-24 00:13
你说了第4次访问一定失败的,所以如果有一次取回的文本是 空  ,那第4次的访问也没有什么意义了,.

返回文本=到文本(网页访问(第一次ID))  ‘获取  当前状态的访问
当前状态一 =文本取中间文本(返回文本,#常量3,,#常量4)

返回文本=到文本(网页访问(第二次ID))  ‘获取  刷新状态的访问
当前状态二 =文本取中间文本(返回文本,#常量3,,#常量4)

返回文本=到文本(网页访问(第三次ID))  ‘获取  刷新状态的访问
当前状态三 =文本取中间文本(返回文本,#常量3,,#常量4)


这三次可以无限访问的 这三次代表刷新状态的意思
回复

使用道具 举报

结帖率:88% (138/156)

签到天数: 14 天

 楼主| 发表于 2018-6-24 00:24:17 | 显示全部楼层   吉林省长春市
其实说白了 就是访问一个网址上传了3个ID  如果三次都没返回空就正明都上传成功了 如果3次里有一次返回的是空 那么证明只上传了2个 所以还可以继续访问

然后我们通过3个ID 做一个刷新

网页访问(ID1)
网页访问(ID2)
网页访问(ID3) 可以无限访问 (其实就是刷新的意思) (间隔800毫秒就行)

然后这3个ID 各返回一个状态  等待 成功 失败

然后目的就是让他们都成功  

返回成功的就不用管了

等待的继续等啊 一直到它返回的结果 是成功了 还是失败了 成功就不管啊 失败了 就 访问(删除失败ID) 然后在次访问 (第一步)继续(第二步) 一只到成功啊

3个的ID 和 现在都运行到什么状态了? 从易语言开始运行就 弄一个标签 一直看着 知道都什么状态了现在
回复

使用道具 举报

结帖率:100% (15/15)
发表于 2018-6-24 02:16:58 | 显示全部楼层   福建省*
比较麻烦,没实例,写伪代码无法测试
循环倒是好写
循环判断.e (87.75 KB, 下载次数: 4)
回复

使用道具 举报

结帖率:88% (138/156)

签到天数: 14 天

 楼主| 发表于 2018-6-24 08:01:09 | 显示全部楼层   吉林省长春市
zl2017 发表于 2018-6-24 02:16
比较麻烦,没实例,写伪代码无法测试
循环倒是好写

...那麻烦帮写一下吧
回复

使用道具 举报

结帖率:88% (7/8)
发表于 2018-6-24 11:14:55 | 显示全部楼层   广东省佛山市
这样子?
  
变量名类 型静态数组备 注
返回的ID整数型 
判断循环首 (返回的ID = “”)
返回的ID=网页_访问 (地址)
延迟 (800)
判断循环尾 ()


i支持库列表   支持库注释   
spec特殊功能支持库

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表