【发布时间】:2014-08-23 18:20:56
【问题描述】:
所以,我对这个 Google Apps 脚本有点进退两难。习惯于传统的 Javascript 是一个很大的挑战。我目前正在尝试从 Zillow 中提取值,并且我在前几个项目(租金值、Zestimate、学校评级)上取得了成功,但现在我需要获取学校名称。这变得非常麻烦,老实说,我似乎无法对我需要得到的东西做一个.match()。我会发布一些代码,看看是否有其他人可以掌握这一点。
我正在解析的 Zillow 代码:
<ul class="nearby-schools-list">
<li class="nearby-schools-header">
<h4 class="nearby-schools-rating"> </h4>
<h4 class="nearby-schools-name"> </h4>
<h4 class="nearby-schools-grades">Grades</h4>
<h4 class="nearby-schools-distance">Distance</h4>
</li>
<li class="nearby-school assigned-school">
<span class="gs-rating-badge">
<div class="gs-rating gs-rating-8">
<span class="gs-rating-number">8</span>
<span class="gs-rating-subtext">out of 10</span>
</div>
</span>
<span class="nearby-schools-name"> <a href="/seattle-wa/schools/salmon-bay-school-93956/" class="ga-tracked-link track-ga-event school-name notranslate" data-ga-action="School details click" data-ga-label="HDP AB Module" data-ga-category="Homes" data-ga-standard-href="true">Salmon Bay School</a>
<span class="assigned-label de-emph">(assigned)</span>
</span>
<span class="nearby-schools-grades">K-8</span>
<span class="nearby-schools-distance">0.3 mi</span>
</li>
<li class="nearby-school assigned-school">
<span class="gs-rating-badge">
<div class="gs-rating gs-rating-8">
<span class="gs-rating-number">8</span>
<span class="gs-rating-subtext">out of 10</span>
</div>
</span>
<span class="nearby-schools-name"> <a href="/seattle-wa/schools/whitman-middle-school-93939/" class="ga-tracked-link track-ga-event school-name notranslate" data-ga-action="School details click" data-ga-label="HDP AB Module" data-ga-category="Homes" data-ga-standard-href="true">Whitman Middle</a>
<span class="assigned-label de-emph">(assigned)</span>
</span>
<span class="nearby-schools-grades">6-8</span>
<span class="nearby-schools-distance">1.4 mi</span>
</li>
<li class="nearby-school assigned-school">
<span class="gs-rating-badge">
<div class="gs-rating gs-rating-9">
<span class="gs-rating-number">9</span>
<span class="gs-rating-subtext">out of 10</span>
</div>
</span>
<span class="nearby-schools-name"> <a href="/seattle-wa/schools/ballard-high-school-92363/" class="ga-tracked-link track-ga-event school-name notranslate" data-ga-action="School details click" data-ga-label="HDP AB Module" data-ga-category="Homes" data-ga-standard-href="true">Ballard High</a>
<span class="assigned-label de-emph">(assigned)</span>
</span>
<span class="nearby-schools-grades">9-12</span>
<span class="nearby-schools-distance">0.2 mi</span>
</li>
这是一个很大的块,但基本上我试图从school-name 中获取文本,这是ul > li > span.nearby-schools-name > a.school-name 下列出的一个类。
这是我的尝试,我所做的任何事情都会被退回。
// get School Names
var match = contentText.match(/<a href="([^<]*)" class="ga-tracked-link track-ga-event school-name notranslate" /g);
Browser.msgBox(match);
var schoolNameArray = new Array();
while (match.length > 0) {
var thisSchoolName = new String(schoolName.pop());
Browser.msgBox(thisSchoolName);
//schoolNameArray.push(thisSchoolName);
}
var schoolNames = schoolNameArray.toString().replace(/,/g, " _ ");
快速常见问题解答,我尝试了网络上复制getElementsByClassName 的功能,但我没有运气。我也试过抓住href
【问题讨论】:
标签: javascript jquery html scripting google-apps-script