从网站获取特定文本 (html)
Get specific text from a website (html)
我想做一个小程序,这样我就可以快速轻松地收听这个广播电台。
http://www.offradio.gr/player
问题是我想不出任何方法来获取现在播放的曲目名称,制作人的名称和播放历史记录。
我想过从网站的原始源代码中提取特定数据,但源代码就像 4,000 行代码 - 对我来说太多了。
有什么想法吗?
我正在使用Visual Studio和C#
我知道这不是
最好的方法,但它是一个起点,它有效:
public Form1()
{
InitializeComponent();
webBrowser1.DocumentCompleted += webBrowser1_DocumentCompleted; // Subscribe event
webBrowser1.Navigate("http://www.offradio.gr/player"); // Navigate to radio stream
}
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
/*
Look for the element containing the element with the track number
I've chosen this one because it has an ID means it's always the same div
*/
HtmlElement parent = webBrowser1.Document.GetElementById("show_info");
if (parent != null) // This event fires multiple times. Sometimes this element hasn't been created yet
{
/*
We know it's a childless node inside `#show_info`.
So let's just search for it.
*/
foreach (HtmlElement child in parent.GetElementsByTagName("span"))
{
if (child.Children.Count == 0) // Check if it has children
{
string title = child.InnerText; // The result
break;
}
}
}
}
不幸的是,我不得不使用.NET函数,使用JS,我会采取更简单的方法:
document.querySelector('#show_info .field-content').innerText
更新:
让我再给你一个提示。
查看document.getElementById('show_info').innerText
的输出。
你可以解析它,你就完成了!
希望对你有帮助
相关文章:
- 用JavaScript替换Android WebView模板上的html文本
- 仅IE8 html文本框中的字符
- HTML文本框中的javascript数字
- HTML文本输入大小
- 如何放置ÅÄ和#214;在javascript数组中,然后将其与html文本进行比较
- 如何以非编程方式国际化HTML文本
- 在 PHP 块中使用 Javascript 设置 HTML 文本框的值(使用 echo)
- jQuery在用新文本替换HTML文本时淡出HTML文本,而不是仅显示
- HTML文本框,它接受电话号码,并以美国电话号码格式显示
- Javascript按钮,在html文本区域中插入一个大黑点(•)
- 更换163;使用javascript从html文本区域中提取字符
- 单击或点击切换HTML文本
- 单击即可编辑HTML文本
- 分析Adobe InDesign的HTML文本——其他标记中的标记
- 如何将mysql查询的结果获取到html文本框中
- 当使用javascript/jquery添加值时,html文本输入表显示不正确
- 如何将 HTML 文本同步并突出显示到音频
- 如何使用 JQuery 从相对元素获取 html 文本
- 根据用户选择的输入编写 html 文本
- MVC 4:使用 JQUERY 和 PartViewResult 动态创建 HTML 文本框.如果代码是动态添加的,如何