javascript - 如何在 AutoHotKey 中解析 HTML?

标签 javascript html autohotkey

我在解析 HTML 文件时遇到问题。问题是,我见过的所有例子对于初学者来说都太复杂了,我根本不理解它们。我已经阅读了 GetNestedTag 手册,但似乎有更好的方法:使用 HTML Dom。

我有很多标签(不确定这是否是正确的词),例如:

</span> 3272</p>

<h1 class="articleTitle">Title of text</h1>

如何获取文本:第一种情况下的“3272”和第二种情况下的“文本标题”?

到目前为止我已经尝试过:

htmlCode = <h1 class="articleTitle">Title of text</h1>

html := ComObjCreate("HTMLFile")
html.write(htmlCode)

MsgBox % html.getElementsByClassName("articleTitle")[0].innerText\

我也尝试过:

IE := ComObjCreate("InternetExplorer.Application")
IE.Visible := true

IE.Navigate("http://archiwum.rp.pl/artykul/473989-Miller-rezygnuje-z-kierowania-SLD.html#.VwkZz_mLTcs" PostCode)

    while IE.readyState!=4 || IE.document.readyState != "complete" || IE.busy
        continue

   Sleep 1000

Title_element  := Name_Elements[A_Index-1].parentElement.getElementsByClassName("articleTitle")[0]
Title_text     := Title_element.innertext

msgbox, % title_text


ExitApp

在每种情况下MsgBox无法显示正确的值。

最佳答案

您需要温习Dom为了使用 COM 正确导航和解析网站。

我在这里建议这个帖子:Basic Webpage Controls with JavaScript / COM - Tutorial

IE := ComObjCreate("InternetExplorer.Application")
IE.Visible := true

IE.Navigate("http://archiwum.rp.pl/artykul/473989-Miller-rezygnuje-z-kierowania-SLD.html#.VwkZz_mLTcs" PostCode)

    while IE.readyState!=4 || IE.document.readyState != "complete" || IE.busy
        continue

   Sleep 1000

Title_text := IE.document.getElementsByClassName("articleTitle")[0].innertext

MsgBox % Title_text

关于javascript - 如何在 AutoHotKey 中解析 HTML?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36518982/

相关文章:

javascript - NodeJs + Mongo db 无法等待结果

javascript - 防止默认浏览器按键使用键名而不是键码在javaScript中实现组合键

css - 为内容创建动态增长的宽度

com - AHK COM 保存时通过文件路径传递变量

autohotkey - Spotify 中下一首歌曲的热键

macros - AutoHotKey:#IfWinActive .* 资源管理器 *. ?在 Windows 7

javascript - 条件正则表达式javascript

javascript - jwplayer 从 yell cdn 流式传输

html - ng-class 在设定时间后删除类(class)

html - Bootstrap 4在div的绝对中心对齐<a>标签