【问题标题】:Cant parse HTML using HTMLCleaner无法使用 HTMLCleaner 解析 HTML
【发布时间】:2016-02-04 18:41:02
【问题描述】:

我尝试按照这个链接解析html;

http://thuoc.vn/Default.aspx?Mod=ViewDrugs&DrugsID=52016

我想阅读这段代码中的一些内容

<div class="tabContent" id="PillContent" style="display: block;">
<div class="headerinfo">Chỉ định:</div>
Viêm mũi dị ứng như hắt hơi, sổ mũi, ngứa mũi, ngạt mũi kèm kích ứng, ngứa họng, ho, giảm các triệu chứng mề đay mãn tự phát.
<div class="headerinfo">Chống chỉ định:</div>
Quá mẫn với thành phần thuốc.
<div class="headerinfo">Chú ý đề phòng:</div>
Trẻ < 12t. Có thai và cho con bú: không nên dùng
<div class="headerinfo">Tác dụng ngoài ý:</div>
Hiếm cảm giác mệt mỏi, khô miệng, nhức đầu, rất hiếm: nổi mẩn và phản vệ.
<div class="headerinfo">Liều lượng:</div>
Người lớn và trẻ >= 12t: uống 1 viên ngày 1 lần.
</div>

但我无法阅读其中的任何内容。

我的代码。我只是尝试阅读标签 div 中的所有内容。

HtmlCleaner cleaner = new HtmlCleaner();
    TagNode node = null;
    try {
        node = cleaner
                .clean(new URL(
                        "http://thuoc.vn/Default.aspx?Mod=ViewDrugs&DrugsID=35318"));
        for (Object o : node.evaluateXPath("//div")) {

            System.out.println(((TagNode) o).getText());
        }
    } catch (MalformedURLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

【问题讨论】:

    标签: java html parsing htmlcleaner


    【解决方案1】:

    `

    final HtmlCleaner mCleaner = new HtmlCleaner();   
    CleanerProperties props = mCleaner.getProperties();  
        props.setAllowHtmlInsideAttributes(true);  
        props.setAllowMultiWordAttributes(true);  
        props.setRecognizeUnicodeChars(true);  
        props.setOmitComments(true);      
     /*url from were data to be fetched*/  
    String mSiteUrl="http://www.example.com";   
    String mXPath="//div";   
    //TagnNode for storing data received from url  
    final TagNode mGetDataFromUrl;   //Establish connection   URL
    url=new URL(mSiteUrl);   final URLConnection
    mCCon=url.openConnection();   mGetDataFromUrl=mCleaner .clean(new   
    InputStreamReader(mCCon.getInputStream()));   //get to xpath from
    were data is to be retrieve    Object[]
    mPageData=mGetDataFromUrl.evaluateXPath(mXPath);   //validate object
    if(mPageData.length>0) {
         TagNode mXPathParsedData = (TagNode) mPageData[0];  
         // all text in div is in mData   
         Strign mData=mXPathParsedData .getText().trim();   }
    

    ` 这是一种方法,希望对您有所帮助!谢谢。

    【讨论】:

      【解决方案2】:

      <div class="tabContent" id="PillContent" style="display: block;">
      <div class="headerinfo" style="font-weight: bold;color: #F14609;font-size: 12px;margin-bottom: 5px;margin-top: 15px;">Chỉ định:</div>
      Viêm mũi dị ứng như hắt hơi, sổ mũi, ngứa mũi, ngạt mũi kèm kích ứng, ngứa họng, ho, giảm các triệu chứng mề đay mãn tự phát.
      <div class="headerinfo" style="font-weight: bold;color: #F14609;font-size: 12px;margin-bottom: 5px;margin-top: 15px;">Chống chỉ định:</div>
      Quá mẫn với thành phần thuốc.
      <div class="headerinfo" style="font-weight: bold;color: #F14609;font-size: 12px;margin-bottom: 5px;margin-top: 15px;">Chú ý đề phòng:</div>
      Trẻ < 12t. Có thai và cho con bú: không nên dùng
      <div class="headerinfo" style="font-weight: bold;color: #F14609;font-size: 12px;margin-bottom: 5px;margin-top: 15px;">Tác dụng ngoài ý:</div>
      Hiếm cảm giác mệt mỏi, khô miệng, nhức đầu, rất hiếm: nổi mẩn và phản vệ.
      <div class="headerinfo" style="font-weight: bold;color: #F14609;font-size: 12px;margin-bottom: 5px;margin-top: 15px;">Liều lượng:</div>
      Người lớn và trẻ >= 12t: uống 1 viên ngày 1 lần.
      </div>

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-09-27
        • 2011-11-16
        • 2013-05-14
        • 1970-01-01
        • 2020-02-29
        • 2012-07-12
        • 2013-05-07
        • 1970-01-01
        相关资源
        最近更新 更多