- 浏览: 383098 次
- 性别:
- 来自: 四川
-
文章分类
- 全部博客 (247)
- 数据库以及sql (11)
- java (48)
- 爬虫学习 (20)
- java编程 (28)
- python编程以及安装和配置 (27)
- oracle数据库 (32)
- mongodb基本操作 (4)
- linux学习 (7)
- easyUI (2)
- nodeJs (8)
- python学习 (16)
- 其他 (13)
- hadoop (1)
- svn (1)
- 汉字 (1)
- windows (2)
- jsp (5)
- fiddler (1)
- ETL (1)
- teamviewer (1)
- maven (4)
- GIT (2)
- datagrip (1)
- ocr (1)
- redis (3)
- mysql (3)
- linux (1)
- 数据服务 (0)
最新评论
百度搜索后显示的结果中url是临时的,我们想要的是点进去的浏览器地址栏的那个网址
如:
https://www.baidu.com/link?url=a2VZ4Xp9ukhitVl8mvA9gjMEQXz02cI51SVwYmtbFaLv61OTHeSzmrk0CkX-UN6tqAvrvpGTppbygbyuRyXf0Y__Jy404M0S4-aJ1b_DSDS&wd=&eqid=8761145d00014ab10000000359549e56
转换为
http://muzhi.baidu.com/question/1366450327137412899.html
需要的jar包:
commons-codec-1.6.jar
commons-httpclient-3.1.jar
commons-logging.jar
--------------------------------------代码
package httpclient;
import java.io.IOException;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.methods.GetMethod;
public class HttpClient_Get_Url {
/**
* 根据百度url,获取原本url
* @throws IOException
* @throws HttpException
* */
public static String GetTrueUrlByBaiduUrl(String baidu_url) throws HttpException, IOException{
//---------------------------1
HttpClient client = new HttpClient();
//设置代理IP
//client.getHostConfiguration().setProxy("172.22.40.20", 8080);
GetMethod getMethod = new GetMethod(baidu_url);
//获取状态码
int stateCode =client.executeMethod(getMethod);
String text=getMethod.getResponseBodyAsString();
//释放
getMethod.releaseConnection();
if (stateCode == HttpStatus.SC_OK) {
text=text.split("URL='")[1].split("'")[0];
//System.out.println("访问成功,网址:"+text);
return text;
}
return null;
}
public static void main(String[] args) throws HttpException, IOException {
String url="https://www.baidu.com/link?url=a2VZ4Xp9ukhitVl8mvA9gjMEQXz02cI51SVwYmtbFaLv61OTHeSzmrk0CkX-UN6tqAvrvpGTppbygbyuRyXf0Y__Jy404M0S4-aJ1b_DSDS&wd=&eqid=8761145d00014ab10000000359549e56";
System.out.println(GetTrueUrlByBaiduUrl(url));;
}
}
如:
https://www.baidu.com/link?url=a2VZ4Xp9ukhitVl8mvA9gjMEQXz02cI51SVwYmtbFaLv61OTHeSzmrk0CkX-UN6tqAvrvpGTppbygbyuRyXf0Y__Jy404M0S4-aJ1b_DSDS&wd=&eqid=8761145d00014ab10000000359549e56
转换为
http://muzhi.baidu.com/question/1366450327137412899.html
需要的jar包:
commons-codec-1.6.jar
commons-httpclient-3.1.jar
commons-logging.jar
--------------------------------------代码
package httpclient;
import java.io.IOException;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.methods.GetMethod;
public class HttpClient_Get_Url {
/**
* 根据百度url,获取原本url
* @throws IOException
* @throws HttpException
* */
public static String GetTrueUrlByBaiduUrl(String baidu_url) throws HttpException, IOException{
//---------------------------1
HttpClient client = new HttpClient();
//设置代理IP
//client.getHostConfiguration().setProxy("172.22.40.20", 8080);
GetMethod getMethod = new GetMethod(baidu_url);
//获取状态码
int stateCode =client.executeMethod(getMethod);
String text=getMethod.getResponseBodyAsString();
//释放
getMethod.releaseConnection();
if (stateCode == HttpStatus.SC_OK) {
text=text.split("URL='")[1].split("'")[0];
//System.out.println("访问成功,网址:"+text);
return text;
}
return null;
}
public static void main(String[] args) throws HttpException, IOException {
String url="https://www.baidu.com/link?url=a2VZ4Xp9ukhitVl8mvA9gjMEQXz02cI51SVwYmtbFaLv61OTHeSzmrk0CkX-UN6tqAvrvpGTppbygbyuRyXf0Y__Jy404M0S4-aJ1b_DSDS&wd=&eqid=8761145d00014ab10000000359549e56";
System.out.println(GetTrueUrlByBaiduUrl(url));;
}
}
发表评论
-
是什么java多态
2018-11-14 13:43 768Java多态 例1.1+1=2 例2."1&quo ... -
经纬度转换
2018-09-25 13:57 0package com.teamdev.jxbrowser.c ... -
java连接池技术
2018-09-04 14:26 429转:https://www.cnblogs.com/xdp-g ... -
java 提取url字符串中的域名
2018-08-30 15:24 7468package com.teamdev.jxbrowser.c ... -
java多线程中锁(lock)、wait、notify()的使用
2018-07-13 11:31 5818package com.kai.多线程间的通信; impor ... -
java多线程间的通信实例
2018-07-13 11:00 1469----线程间的通信 public class ListAd ... -
volatile关键字
2018-07-12 11:20 688volatile:使变量在多个线程间可见 public c ... -
java根据百度url获取真正的网页地址
2018-07-09 11:26 1153/** * 根据百度url,获取原本url * @th ... -
java中的base64字符流与图片的相互转换
2018-06-29 13:27 1317//base64字符串转化成图片 public sta ... -
java去除图片水印的解决办法
2018-06-28 10:54 3436原文地址:http://www.oicqzone.com/pc ... -
java中的中文字符转URLEncode
2018-06-26 11:26 848String urlTypeName =java.net.UR ... -
java下载图片到本地实例
2018-06-25 15:34 1399public static void main(String[ ... -
Myeclipse中如何更改jsp默认的打开方式
2018-05-04 17:44 7101.打开myeclipse 2.点击上方的 window-&g ... -
java三大范式
2018-05-02 09:50 807参考地址:https://www.cnblogs.com/ja ... -
请求中设置代理IP
2018-04-18 16:24 1065(不能直接JVM设置代理 System.getProperti ... -
java获取当前时间的时间戳
2018-04-08 09:25 1544package com.teamdev.jxbrowser.c ... -
java四种线程池实例 (kaigege)
2018-03-28 11:03 758Java通过Executors提供四种线程池: 1.newCa ... -
java获取IP地址(windos,linux)皆可
2018-03-28 09:44 900package com.teamdev.jxbrowser.c ... -
post 请求
2018-02-05 16:32 579public static void trustEveryo ... -
java robot控制鼠标和键盘(笔记本中打印 i love you)(滑动)
2018-01-25 16:57 2159package robot_java; import jav ...
相关推荐
这个Java项目——"java实现百度排名检索自动获取排名地址并点击访问",正是为了帮助用户自动化地监控和分析其网站在百度搜索结果中的关键词排名情况。下面我们将深入探讨该项目涉及的核心知识点。 首先,关键词排名...
百度人像动漫化API是百度AI开放平台提供的一项服务,它能够将真实的人脸图像转换为具有二次元风格的动漫形象,这种技术基于深度学习和计算机视觉算法。开发者可以利用这个接口,快速地为用户提供个性化的动漫头像...
通过使用私钥对数据进行加密,生成一个唯一的数字签名,从而确保数据的完整性和来源的真实性。 ### 4. NDK 的优缺点 - **错误选项解析**:`开发简单、调试容易、增加开发团队规模`。NDK的使用通常涉及到较低级别的...
项目Maven构建,真实大型互联网架构,做到高并发,大数据处理,整个项目使用定制化服务思想,提供模块化、服务化、原子化的方案,将功能模块进行拆分,可以公用到所有的项目中。架构采用分布式部署架构,所有模块...
- **具体描述**:获取HttpClient实例的方法是通过Apache HttpClient库提供的工厂方法或其他第三方库提供的方法,而不是直接new一个HttpClient对象。 - **答案解析**:题目要求选择关于获取HttpClient实例的错误说法...