我在一个游戏网站上,网页标题并不反映游戏标题,而是网站名称和网站描述。每个游戏的名字出现在其页面像这样:如何从网页抓取文字并将其设置为document.title?
<div id="gr-header">
<div>
<h1><a href='/games/'>Games Room</a> - Some Game Name Here</h1>
</div>
<div>
some other stuff
</div>
</div>
现在我手动匹配的游戏ID,在URL,到相应的游戏标题,做以下其中idlist
是包含子集的数组游戏ID,我打算检查,gamelist
是一个数组,其中包含相应的游戏名称按相应的顺序。
for (i=0; i < idlist.length; i++)
{
if (gameid[0] == idlist[i])
{
document.title = gamelist[i];
break;
}
}
但是,这是不雅观的,因为有太多的游戏手动列出它们。我如何从网页抓取“Some Game Name Here”文本并将所述文本存储在变量中?
它的工作原理非常感谢! – Andrea 2012-07-18 08:34:24
不客气。如果你真的想要一行代码,它是:'document.title = document.querySelector(“#gr-header div h1”)。textContent.replace(/^.*\s-\s/,“”);'' ......然而,分离它是更明智的方式,它有助于调试,维护和重用。 – 2012-07-18 11:18:58