gpt4 book ai didi

html - 使用 VBA 操作 IE 以登录和预订类(class)

转载 作者:行者123 更新时间:2023-11-28 03:00:19 24 4
gpt4 key购买 nike

我正在尝试使用 VBA 打开一个新的 IE 实例,转到一个网页,登录,然后导航到一个我可以预订体育课的页面,导航到正确的类(class)并按下“预订”按钮.

我相当精通简单的 VBA,我用它来自动化 excel 任务有一段时间了,但我从未尝试过将它与 IE 一起使用,所以我对这方面还很陌生。
我不太了解 VBA 如何与 HTML 集成,而且我的 HTML 知识还比较基础。

到目前为止,我已经成功创建了打开 IE、导航到正确网页并登录的代码。从那里开始变得复杂......

该网页有一系列“ block ”,可以为每周的体育课选择。这些书每天更新,因此代码需要搜索正确的日期、时间和类(class),然后按相应的图书按钮。

在过去的几天里,我在谷歌上广泛搜索了解决方案,但找不到与我正在寻找的内容类似的内容。

我目前拥有的 VBA 如下。这很适合我要求的第一部分。

    Sub Login_Test()
''This version successfully goes to puregym.com and logs into my account

'Outstanding''''''''''''''''''''''''''''''''''
'Need to select class page
'Need to select correct date & class
'Need to book class
''''''''''''''''''''''''''''''''''''''''''''''

' open IE, navigate to the desired page and loop until fully loaded
Set ie = CreateObject("InternetExplorer.Application")
my_url = "http://www.puregym.com/"

With ie
.Visible = True
.navigate my_url


Do Until Not ie.Busy And ie.readyState = 4
DoEvents
Loop

End With

' Input the userid and password
ie.Document.getElementById("edit-email").Value = "email address"
ie.Document.getElementById("edit-pincode").Value = "pin number"

' Click the Submit button
ie.Document.getElementById("edit-submit").Click

Do Until Not ie.Busy And ie.readyState = 4
DoEvents
Loop

' Navigate to bookings page

With ie

.navigate "http://www.puregym.com/members/bookings"

End With



End Sub

我可能是错的,但我相信下面是我想要运行的 HTML 示例。我想模仿选择类(class)并单击书籍按钮的操作。(一旦我掌握了这些基础知识,我希望 VBA 将类(class)名称、日期和时间与我将存储在 excel 范围内的列表进行比较,并且只有在范围内时才预订它。但是我很感激我需要先走再跑等等……)

              <div class="day column-1" data-date="Friday 22nd January" data-    shortdate="Fri 22/1" data-index="1">
<h2>Fri 22/1</h2>

<div id="tt_block_53_33253" class="three columns tt_block" data-date="2016-01-22" data-time="06:15">
<div class="timetable-class limited-availability">
<button class="icon-info">&nbsp;</button>
<div class="popout">
<span class="weekly-close">&nbsp;</span>
<h1>FAST Tabata</h1>
<p class="timetable-info">This class takes interval training to the next level. 20 seconds high intense work followed by 10 seconds rest for 8 rounds, sound easy? Give this class a go, you won’t be disappointed.</p>
<img src="//www.puregym.com/sites/default/files/styles/square_thumbnail/public/classes/Misc20_0.jpg?itok=mnWQFaIU" alt="Example of FAST Tabata" />
</div>

<header>
<h1>FAST Tabata</h1>
<h2>
06:15 - 06:45 </h2>
</header>


<div class="pt-name">PT name: <strong>Lewis Pratten</strong></div>

<span class="gym-name">Bristol Harbourside</span>

<div class="booking-buttons">
<a href="/members/class-booking/book/53/33253" class="use-ajax secondary button">Book</a>
<span class="spaces-text">Spaces</span>
<span class="spaces-number">1</span>

</div>

非常感谢任何人提供的任何帮助。或者建议使用不同的语言是否会更容易?从我读过的内容来看,python 或 java 可能是执行此操作的更好环境,但我对两者都不熟悉...

最佳答案

要获得 Book 按钮,您可以执行以下操作:

Dim links, link
Set links = IE.Document.GetElementsByTagName("a")
For Each link In links
If link.innerText = "/members/class-booking/book/53/33253" Then
link.Click
End If
Next link

关于html - 使用 VBA 操作 IE 以登录和预订类(class),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34934600/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com