首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Jsoup抓取网页数据

Jsoup抓取网页数据

作者头像
码客说
发布2019-10-21 17:24:56
4K0
发布2019-10-21 17:24:56
举报
文章被收录于专栏:码客码客

获取Session

Connection.Response res = Jsoup.connect("http://www.example.com/login.php")
.data("username", "myUsername", "password", "myPassword")
.method(Method.POST)
.execute();

Document doc = res.parse();
//这儿的SESSIONID需要根据要登录的目标网站设置的session Cookie名字而定
String sessionId = res.cookie("SESSIONID");
Document objectDoc = Jsoup.connect("http://www.example.com/otherPage")
.cookie("SESSIONID", sessionId)
.get();

爬取数据

String baseUrl = urlStr.substring(0, urlStr.indexOf("JobInfo.aspx"));
URL url = null;
try {
    url = new URL(urlStr);
} catch (MalformedURLException e) {
    return null;
}
Document doc = null;
try {
    doc = Jsoup.parse(url, 5000);
} catch (IOException e) {
    return null;
}
Element jobDemand = doc.getElementById("jobDemand");
Element cmpyAddress1 = doc.getElementById("cmpyAddress1");

try {
    //获取某ID的元素
    doc.getElementById("comemial").text().replace("邮箱:", "");
    //获取Tag内的文字
    cmpyAddress1.getElementsByTag("a").get(0).text();
    //获取Tag的属性
    cmpyAddress1.getElementsByTag("a").get(0).attr("href");
    //获取包含某文字的元素
    cmpyAddress1.getElementsContainingOwnText("企业性质").get(0).getElementsByTag("span").get(1).text();
    //获取某样式的元素
    doc.getElementsByClass("tjobName").get(0).text();
    //返回元素节点之后的兄弟元素节点
    doc.getElementsContainingOwnText("职位描述")
        .get(0)
        .nextElementSibling()
        .getElementsByTag("p")
        .get(0)
        .html();
} catch (Exception e) {
    return null;
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-08-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 获取Session
  • 爬取数据
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档