Java爬取利用Jsoup网页内容

该博客展示了如何利用Jsoup库从京东网站抓取指定关键词(如'python')的商品信息。首先,导入Jsoup的Maven依赖,然后定义一个方法`parseJD`,该方法构造京东搜索链接并解析网页。通过查找特定的HTML元素,提取出商品图片、价格和名称,并将这些信息存储在Content对象中,最后返回一个Content对象列表。
摘要由CSDN通过智能技术生成

1.导入maven依赖(Jsoup) 

<dependency>
  <groupId>org.jsoup</groupId>
  <artifactId>jsoup</artifactId>
  <version>1.11.3</version>
</dependency>

2.开整

public class HtmlParseUtil {
    public static void main(String[] args) throws Exception {
        new HtmlParseUtil().parseJD("python").forEach(System.out::println);
    }

    /**
     * 封装爬取京东方法
     * @param keywords
     * @return
     * @throws Exception
     */
    public List<Content> parseJD(String keywords) throws Exception{
        //网站链接
        String url="https://search.jd.com/Search?keyword="+keywords;
        //解析网页
        Document document = Jsoup.parse(new URL(url), 30000);
        //找到你想要元素 div
        Element element=document.getElementById("J_goodsList");
        System.out.println(element.html());
        //获取所有的li元素
        Elements elements = element.getElementsByTag("li");
        //创建list集合
        ArrayList<Content> goodsList = new ArrayList<>();
        //获取元素中的内容
        for (Element el : elements){
            String img=el.getElementsByTag("img").eq(0).attr("data-lazy-img");
            String price=el.getElementsByClass("p-price").eq(0).text();
            String title=el.getElementsByClass("p-name").eq(0).text();
            //创建对象并赋值
            Content content = new Content();
            content.setImg(img);
            content.setPrice(price);
            content.setTitle(title);
            goodsList.add(content);
        }
        return goodsList;
    }
}

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值