使用jsoup解析论坛中的div标签

时间:2013-12-04 21:53:06

标签: java html web-scraping jsoup processing

我正在将jSoup库与Processing结合使用,以从论坛中检索某些文本。我期待只在某个帖子中抓取某个用户的帖子。

这些是包含用户名信息和帖子的div标签:

用户名:

<span itemprop="creator name" class="author vcard"><a hovercard-ref="member" hovercard-id="104291" data-ipb="noparse" class="url fn name  ___hover___member _hoversetup" href="[link to user's profile here]" title="" id="anonymous_element_4"><span itemprop="name">djrajio</span></a></span>

帖子:

<div itemprop="commentText" class="post entry-content ">[post text here]</div>

我尝试了this教程,但div标签的选择器语法对我来说并不是那么清楚。

有人能指出正确的方向,只能抓取特定用户的文字吗?

Here是包含两个div标签的html:

1 个答案:

答案 0 :(得分:0)

try {

    ArrayList<String> arr = new ArrayList<String>();

    Document page = Jsoup.connect("http://illtellyoulater.com/div.txt").get();

    Elements posts = page.getElementsByAttributeValueStarting("id", "post_id_");

    for(Element post : posts) {
        if( post.getElementsByAttributeValue("itemprop", "creator name").get(0).text().trim().equals("djrajio") ) {
            arr.add(post.getElementsByAttributeValue("itemprop","commentText").get(0).text());
        }
    }


    System.out.println(arr.toString());
}catch(Exception e) {
    e.printStackTrace();
}

这仅适用于一页。如果您想访问该主题的所有页面或论坛的所有主题,您将必须使用爬虫。

相关问题