jsoup带cookies(jsoup是什么意思)

本文目录一览:

Jsoup发送http请求,get和post两种方式,分别带参数和不带参数

dependency

groupIdorg.jsoup/groupId

        artifactIdjsoup/artifactId

version1.10.3/version

/dependency

public void JsoupGet() throws Exception{

Connection connect = Jsoup.connect(“;password=lisi”);

// 带参数开始

connect.data(“username”,”zhangsan”);

connect.data(“password”,”lisi”);

// 带参数结束

Document document = connect.get();

System.out.println(document.toString());

}

public void JsoupPost() throwsException{

Connection connect = Jsoup.connect(“;password=lisi”);

// 带参数开始

connect.data(“username”,”zhangsan”);

connect.data(“password”,”lisi”);

// 带参数结束

Document document = connect.post();

System.out.println(document.toString());

}

求真正有效的可以模拟登录新浪微博的java代码,后续可以用Jsoup进行抓取。急急!!登录成功马上给分!

package jsoupTest;

import java.io.IOException;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

import org.jsoup.Connection.Method;

import org.jsoup.Connection.Response;

import org.jsoup.Jsoup;

public class JsoupTest {

  public static void main(String[] args) throws IOException {

    MapString, String map = new HashMap();

    //map.put请根据自己的微博cookie得到

    Response res = Jsoup.connect(“别人的主页id”)

        .cookies(map).method(Method.GET).execute();

    String s = res.body();

    System.out.println(s);

    String[] ss = s.split(“scriptFM.view”);

    int i = 0;

    // pl_content_homeFeed

    // pl.content.homeFeed.index

    ListString list = new ArrayList();

    for (String x : ss) {

// System.out.println(i++ + “======================================”);

// System.out.println(x.substring(0,

// x.length()  200 ? 200 : x.length()));

// System.out.println(“===========================================”);

      if (x.contains(“\”html\”:\””)) {

        String value = getHtml(x);

        list.add(value);

        System.out.println(value);

      }

    }

    // content=ss[8].split(“\”html\”:\””)[1].replaceAll(“(\\\\t|\\\\n)”,

    // “”).replaceAll(“\\\\\””, “\””).replaceAll(“\\\\/”, “/”);

    // content=content.substring(0,

    // content.length()=13?content.length():content.length()-13);

    // System.out.println(Native2AsciiUtils.ascii2Native(content));

  }

  public static String getHtml(String s) {

    String content = s.split(“\”html\”:\””)[1]

        .replaceAll(“(\\\\t|\\\\n)”, “”).replaceAll(“\\\\\””, “\””)

        .replaceAll(“\\\\/”, “/”);

    content = content.substring(0,

        content.length() = 13 ? content.length()

            : content.length() – 13);

    return Native2AsciiUtils.ascii2Native(content);

  }

java的Jsoup登录有验证码网页获取登录后的cookie

首先是jar仓库:

dependency

groupIdorg.seleniumhq.selenium/groupId

artifactIdselenium-java/artifactId

version[3.0.1,)/version//获取最新的版本库

/dependency

dependency

groupIdorg.jsoup/groupId

artifactIdjsoup/artifactId

version1.8.2/version

typejar/type

/dependency

代码:

public static void getIndex2() {

//之前运行程序发现生成了N多个chrome driver进程,搞不懂为什么会有那么多进程产生,网上查了下,说起这个service有用,拿来试下,效果未知

ChromeDriverService service = new

ChromeDriverService.Builder().usingDriverExecutable(new

File(“./driver/chromedriver.exe”)).usingAnyFreePort().build();

try {

service.start();

} catch (IOException ex) {

Logger.getLogger(kechengbiaoIndex.class.getName()).log(Level.SEVERE, null, ex);

}

//end

//正式开始

//先定义浏览器驱动,我用chrome浏览器,网上下载一个chromedriver.exe,启动时需要加载

System.getProperties().setProperty(“webdriver.chrome.driver”, “./driver/chromedriver.exe”);

Jsoup或者HttpClient抓取web页面时,data,userAgent,cookie(),timeout(),post();为什么要设置这些?

userAgent让服务器感觉访问者更像一个真实的浏览器在访问,cookie是看服务器需不需要,timeout还需要解释吗,你不设置有一个默认的超时时间

原创文章,作者:NIIU,如若转载,请注明出处:https://www.506064.com/n/140614.html

(0)
NIIUNIIU
上一篇 2024-10-04
下一篇 2024-10-04

相关推荐

  • 关于php不写闭合标签,关于php不写闭合标签的说法

    本文目录一览: 1、php7中为什么不能用 2、为什么php eclispe里面php文件不需要闭合标签 3、看这段php代码中,<P>标签不用关闭吗?也就是说不用写</P>吗? …

    编程 2024-10-04
  • Pug模板详解

    一、Pug模板引擎 Pug模板引擎是一个可以将模板文件转换成HTML文件的工具,它能够通过缩进和标签嵌套来实现模板的生成。它的原名是Jade,后来于2016年改名为Pug。Pug模…

    编程 2024-10-14
  • Python中的对象是如何被实例化的

    在Python中,对象被称作所有数据的基本单元,包括数字、字符串、列表、元组、字典等等,所有的这些都是对象。在Python中,对象是如何被实例化的呢?本文将从多个方面对其进行详细阐…

    编程 2024-10-03
  • 使用Docker安装FastDFS

    一、FastDFS简介 FastDFS是一个开源的分布式文件系统,用于存储和管理大型二进制文件,例如图片、音频、视频等。它由两部分组成:Tracker服务器和Storage服务器。…

    编程 2024-10-04
  • golang选择题库,golang刷题

    本文目录一览: 1、如何学习Golang? 2、golang题库编写 3、golang面试题2之判断字符串中字符是否全都不同 4、彻底理解Golang Map 5、go面试题整理(…

    编程 2024-10-04
  • cad图层替换另外图层,cad图层替换另外图层怎么操作

    本文目录一览: 1、cad怎么把整个图层变成别的图层? 2、怎么把cad中的图层复制到另外一个图层 3、CAD中如何把图形转换到另一图层? 4、CAD画图时如何快速切换图层? 5、…

    编程 2024-10-03
  • Android 权限安全与控制

    一、权限控制的重要性 Android系统中的安全机制主要包括权限控制和应用沙盒机制。权限控制是指为了保障用户隐私和数据安全,限制应用对设备和系统的访问能力。应用沙盒机制是指每个应用…

    编程 2024-10-03
  • c语言怎么输入转义字符,c++转义字符怎么用

    本文目录一览: 1、c语言中,‘/0’,‘/n’这些转义字符这么用键盘输入。 2、c语言 如何在字符串中添加转义字符 \n 3、在c语言中如何打出\n这个符号? 4、C语言 转义字…

    编程 2024-10-04
  • Sed-i替换命令:快速在linux命令行中替换文本内容

    Sed(Stream EDitor)是一个强大的流文本编辑器,它可以快速地进行文本替换操作。在linux命令行中,Sed-i命令是一个非常实用的工具,可以帮助我们迅速地替换文本内容…

    编程 2024-10-04
  • python绘图进阶(Python编程绘图)

    本文目录一览: 1、Python气象数据处理与绘图(18):泰勒图 2、0基础学习python怎么入门呢? 3、Python气象数据处理与绘图(2):常用数据计算方法 4、如何自学…

发表回复

登录后才能评论