大学就是该做做好玩的事

阅读: 评论:0

大学就是该做做好玩的事

大学就是该做做好玩的事

老妈让我帮他抢个红米,开了n个窗口就是刷不出来,那些黄牛到底是怎么抢的,淘宝上看到有卖抢红米的软件就是一键打开n个窗口然后进行自动登录,抢购,这样是不是就厉害些,我就想照着做一个出来玩,之前尝试了一次用js做,结果就是解决不了跨域访问的问题,这时候就想有没有个可以自己随意操作的浏览器,浏览器会给很多api接口这样就是不是好解决很多,然后就发现vb里面有个webbrowser浏览器控件可以解决这个问题,于是说干就干了。

首先想想需求是,给你一个账号密码能够自动登录。看看小米的网站源码发现是登录的控件是在一个iframe里面,怎么获取这么iframe里面的document代码是一个问题,代码如下

之前还要导入两个库文件,其中一个没有还需要下载

Private Function getFrames(ByVal WB As WebBrowser) As Object
Dim pContainer As olelib.IOleContainer
Dim pEnumerator As olelib.IEnumUnknown
Dim pUnk As olelib.IUnknown
Dim pBrowser As SHDocVwCtl.WebBrowser_V1
Set pContainer = WB.Object.Document
If pContainer.EnumObjects(OLECONTF_EMBEDDINGS, pEnumerator) = 0 Then
Set pContainer = Nothing
Do While pEnumerator.Next(1, pUnk) = 0
Set pBrowser = pUnk
If Err.Number = 0 Then
'Print "Frame: " & pBrowser.LocationURL
' 这里用来设置你想获得的frame 因为只有一个frame就不管了
If pBrowser.LocationURL <> "" Then '可以在这里加条件判断得到指定的frame,基本可以根据url或者innerHTML中的某个关键字符
Set getFrames = pBrowser
Exit Function
End If
End If
Loop
Set pEnumerator = Nothing
End If
End Function

解决完跨域访问后自动登录什么的就能完成了,接着就是如何打开多个窗口并进行控制,这里声明了一个动态数组来管理新建的窗口,并对每一个窗口进行一些自动化的操作

这些功能比较繁琐一点但是技术上没什么难点


这是我基本设想的些功能,基本都实现了,但是小米的反黄牛肯定还在不断进行中,这是个博弈的过程,就像这次加入的验证码就又坑了我一次,现在还有好多小毛病没有达到我想要的目标,任何方面想要做好都不是一天两天的事我估计不会再改进什么,看看下次抢时能不能用上吧

本文发布于:2024-01-27 20:51:59,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/17063599192567.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:该做   大学
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23