jsoup抓取中国知网数据2 (完善下)

@[TOC](java使用 jsoup抓取中国知网数据(简化后))

java使用jsoup抓取中国知网数据2 (完善下)

之前写的抓取,只做到半自动,还需要自己填入cookies,这次完善下:

  1. 详细信息的获取 ,跳入详情页,获取更多详细信息;
  2. 去掉手动输入cookie,只需要输入药品名,然后自动获取文献;
// 1.首先是跳入详情页,不需要新建链接,而是直接重定向跳转.
String link = doc.getElementsByClass("title_c").get(j).getElementsByTag("a").attr("href");
Document detailDoc = pageConn.url("https://kns.cnki.net" + link)
			.method(Connection.Method.GET).referrer("https://kns.cnki.net" + link).get();
String abstract_c = detailDoc.getElementById("ChDivSummary").text();
// 2.访问知网获取cookies
//模拟访问主页,目的获取cooikes
 Connection pageConn = Jsoup.connect("https://kns.cnki.net");
 pageConn.get();
//原链接重定向拼接参数,执行检索,返回结果页( •̀ ω •́ )y.
//reqStr = 拼接检索时的请求参数
pageConn.url("https://kns.cnki.net/kns/request/SearchHandler.ashx?" + reqStr)
                    .method(Connection.Method.POST)
                    .referrer("https://kns.cnki.net/kns/brief/result.aspx?dbprefix=CFLS&crossDbcodes=CJFQ,CDFD,CMFD,CPFD,IPFD,CCND,CCJD").post().text();
//这里直接单起新链接就可以了,直接设置原cookies
//获取请求cookies
 Map<String, String> cookies = pageConn.response().cookies();
 String url = "http://kns.cnki.net/kns/brief/brief.aspx?pagename=ASP.brief_result_aspx&dbPrefix=CFLS&DisplayMode=custommode";
 //新建连接添加cookies
  Connection con = Jsoup.connect(url);
  con.cookies(cookies);
  //DOCUMENT 列表页
  Document doc = con.get();
 //.....之后获取页数,跳转页数,然后挨个进去获取详情就OK了.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用Jsoup抓取携程旅游网的数据头歌可以通过以下步骤实现: 1. 导入Jsoup库:首先需要在项目中导入Jsoup库,可以通过在项目的依赖中添加Jsoup的Maven依赖或者手动将Jsoup库导入到项目中。 2. 创建连接:使用Jsoup库中的`connect()`方法创建一个与携程旅游网连接的对象。例如,可以使用以下代码创建一个与携程旅游网首页连接的对象: ```java String url = "https://www.ctrip.com/"; Connection connection = Jsoup.connect(url); ``` 3. 发送请求并获取HTML内容:使用连接对象的`get()`方法发送请求并获取携程旅游网的HTML内容。例如,可以使用以下代码发送请求并获取HTML内容: ```java Document document = connection.get(); ``` 4. 解析HTML内容:使用Jsoup库中提供的方法解析HTML内容,获取到所需的数据。例如,可以使用以下代码获取携程旅游网首页的标题: ```java String title = document.title(); ``` 5. 提取数据:根据需要,使用Jsoup提供的选择器、过滤器等方法提取页面中的特定数据。例如,可以使用以下代码提取携程旅游网首页的所有图片链接: ```java Elements imgElements = document.select("img"); for (Element imgElement : imgElements) { String imgUrl = imgElement.attr("src"); // 进一步处理图片链接... } ``` 以上是简单的示例,通过以上步骤可以使用Jsoup抓取携程旅游网的数据。根据具体的需求和页面结构,可以使用更多的Jsoup方法来提取所需的数据

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值