解决方案 »

  1.   

    http://list.yhd.com/c5140-0-81016/b/a-s1-v0-p2-price-d0-f0-m1-rt0-pid-mid0-k
    是上面的url 吗? 需要哪些获取那些内容
      

  2.   

    <!--s 商品列表-->
    <div class="mod_search_list mod_search_list_zhai ">
    <ul class="clearfix" id="itemSearchList">
    <li class="search_item" id="producteg_16081" data-tcd="5.90871" data-tcs="3.0" >
    <!-- s 电器类标题hover3行显示,添加class:electrical_item_box-->
    itemSearchList  下面的数据是 js 加载出来的。你获取的是html 不是最后 js 生成的数据。
      

  3.   

    看出错了 Jsoup
    Document doc = Jsoup.connect("http://list.yhd.com/c5140-0-81016/b/a-s1-v0-p1-price-d0-f0-m1-rt0-pid-mid0-k/").get();
    Elements  es= doc.getElementById("itemSearchList").getElementsByTag("li");
    String price="";
    String name="";
    String cj="";
    String positiveRatio="";
    for (org.jsoup.nodes.Element e : es) {
      price=e.getElementsByAttribute("yhdprice").html().replaceAll("<.*?>", "").replace("&yen;", "¥"); 
    name=e.getElementsByAttribute("singlefreeflag").html().replaceAll("<.*[^>]>(.*?)</.*?>", "$1");
    cj=e.getElementsByClass("cj").get(0).html().replaceAll("<.*?>", "");
    if(e.getElementsByClass("positiveRatio").size()>0)
    positiveRatio=e.getElementsByClass("positiveRatio").get(0).html().replaceAll("<.*?>", "");
    System.out.println(name+"-------------"+price+"-------------"+cj+"-------------"+positiveRatio);
    }