下面这个是解析cookie的方法,因为需要map集合格式的cookie所以使用map集合进行数据的保存.
/**
* 解析cookie为Map集合
*
* @param cookie
* @return
*/
public HashMap<String, String> convertCookie(String cookie) {
HashMap<String, String> cookiesMap = new HashMap<String, String>();
/*根据;号把cookie字符串集,分成字符串数组*/
String[] items = cookie.trim().split(";");
/*根据=号把cookie分开并且保存成map集合*/
for (String item : items) cookiesMap.put(item.split("=")[0], item.split("=")[1]);
return cookiesMap;
}
下面这段是使用Jsoup进行网页请求并且获取到页面的dom
/**
* 爬取指定网页部分信息
* @param name 需要查询的电影名字
* @return
*/
public Set<ShiPin> jsoupTest1(String name) {
/*获取网页信息*/
Document document = null;
try {
String cookie = "wp_xh_session_02fbb834757a2600b9754229ee69d35c=09abfda2588a8dbe6fe2f4991ff2df57||1668910395||1668906795||5c6039e248894d6ab9299e8e7536b926; Hm_lvt_6c357a02991c9746bd18054c7da7d312=1668737600; ppwp_wp_session=1f8b9aa0286e334b0373a2cbad9debcc||1668740996||1668740636; Hm_lpvt_6c357a02991c9746bd18054c7da7d312=1668739217";
document = Jsoup.connect("https://www.****.***/?s=" + name).cookies(convertCookie(cookie)).get();
} catch (IOException e) {
e.printStackTrace();
}
}
上面就是通过Jsoup并且携带cookie进行网页访问,获得页面的dom信息.