从D中的网页中读取数据



如何简单地打开一个url和读取数据从网页与D?(如果需要使用标准库功能,我更喜欢phobos而不是tango)

curl在标准库中。你可以像这样很容易地获取url:

import std.net.curl;
string content = get("d-lang.appspot.com/testUrl2");

http://dlang.org/phobos/std_net_curl.html得到

如果你需要解析html,我写了一个dom库,非常擅长。https://github.com/adamdruppe/misc-stuff-including-D-programming-language-web-stuff

获取dom。D和字符编码。D那么你可以:

import arsd.dom;
auto document = new Document();
document.parseGarbage(content); // content is from above, the html string
writeln(document.title); // the <title> contents
auto paragraph = document.querySelector("p");
if(paragraph is null)
     writeln("no paragraphs in this document");
else
     writeln("the first paragraph is: ", paragraph.innerText);

等等。如果您使用过javascript dom api,这是非常相似的(尽管也扩展了很多方式)。

我认为std.net.curl绑定是你最好的选择,特别是它的get/post方法(示例在文档中):http://dlang.org/phobos/std_net_curl.html#get

毕竟,curl是专门为这类任务设计的,绑定是phobos的一部分。

相关内容

  • 没有找到相关文章

最新更新