更新1:2018/1/15

类似于 https://s.click.taobao.com/t?e=m%3D2%26s%3DshhycMgyX5YcQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67gtlG6lwPBS0UkCu4LW4fHWggE%2B81xYdaYgwvAJKzKRhR0QUH89hs6odoD3G8jExAxAqvUhwaPOiypAbhWWbtazmAClNJkpsCzHrKHhQWCLYttvJ9Z4G1Zg%3D&pvid=10_183.135.6.227_21727_1512373605774&sc=c2Z10Xw&ref=&et=nQZarJKAELgKLFmnQOOdGhGI9MyeD0rm

这种链接怎么转成正常的淘宝链接??

实际问题:淘客链接转成正常商品链接

解决办法:
1、获取:tu链接=https://s.click.taobao.com/t_js?tu=https%3A%2F%2Fs.click.taobao.com%2Ft%3Fe%3Dm%253D2%2526s%253DshhycMgyX5YcQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67gtlG6lwPBS0UkCu4LW4fHWggE%252B81xYdaYgwvAJKzKRhR0QUH89hs6odoD3G8jExAxAqvUhwaPOiypAbhWWbtazmAClNJkpsCzHrKHhQWCLYttvJ9Z4G1Zg%253D%26pvid%3D10_183.135.6.227_21727_1512373605774%26sc%3Dc2Z10Xw%26ref%3D%26et%3DXDdI5IoTDHiv%252FPC6VebP6npa%252BXvuZjy1

2、解密tu参数链接:String jiemiUrl = "https://s.click.taobao.com/t?e=m%3D2%26s%3DshhycMgyX5YcQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67gtlG6lwPBS0UkCu4LW4fHWggE%2B81xYdaYgwvAJKzKRhR0QUH89hs6odoD3G8jExAxAqvUhwaPOiypAbhWWbtazmAClNJkpsCzHrKHhQWCLYttvJ9Z4G1Zg%3D&pvid=10_183.135.6.227_21727_1512373605774&sc=c2Z10Xw&ref=&et=XDdI5IoTDHiv%2FPC6VebP6npa%2BXvuZjy1";
3、 设置请求行referer: conn.setRequestProperty(HttpHeaders.REFERER, tu);
重新获取location: System.out.println(getBaseUrl(jiemiUrl));

请看代码实现:

public class GetRedirectUrl {@Testpublic void test_getRedirectUrl() throws Exception {// String// url="http://www.baidu.com/link?url=ByBJLpHsj5nXx6DESXbmMjIrU5W4Eh0yg5wCQpe3kCQMlJK_RJBmdEYGm0DDTCoTDGaz7rH80gxjvtvoqJuYxK";String url = "http://cu.manmanbuy.com/goto_261499.aspx";String expectUrl = "http://www.zhihu.com/question/20583607/answer/16597802";/*** 0、淘宝客链接跳转淘宝链接*/// 递归;String tu = getRedirectUrl(url);;System.out.println("tu链接" + tu);// 解密tu参数链接// System.out.println(tu.substring(tu.indexOf("tu=")+3));String jiemiUrl2 = unescape(tu.substring(tu.indexOf("tu=") + 3));System.out.println("tu参数解密链接" + jiemiUrl2);String jiemiUrl = "https://s.click.taobao.com/t?e=m%3D2%26s%3DshhycMgyX5YcQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67gtlG6lwPBS0UkCu4LW4fHWggE%2B81xYdaYgwvAJKzKRhR0QUH89hs6odoD3G8jExAxAqvUhwaPOiypAbhWWbtazmAClNJkpsCzHrKHhQWCLYttvJ9Z4G1Zg%3D&pvid=10_183.135.6.227_21727_1512373605774&sc=c2Z10Xw&ref=&et=nQZarJKAELgKLFmnQOOdGhGI9MyeD0rm";// String jiemiUrl =// "https://s.click.taobao.com/t?e=m%3D2%26s%3DshhycMgyX5YcQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67gtlG6lwPBS0UkCu4LW4fHWggE%2B81xYdaYgwvAJKzKRhR0QUH89hs6odoD3G8jExAxAqvUhwaPOiypAbhWWbtazmAClNJkpsCzHrKHhQWCLYttvJ9Z4G1Zg%3D&pvid=10_183.135.6.227_21727_1512373605774&sc=c2Z10Xw&ref=&et=XDdI5IoTDHiv%2FPC6VebP6npa%2BXvuZjy1";// // 请求获取(tu参数链接);System.out.println("淘宝链接:" + getBaseUrl(jiemiUrl2, tu));/*** 1、普通的跳转获取(递归函数)*/// System.out.println("递归链接:"+getRedirectUrl(url));/*** 2、不递归获取*/// System.out.println("非递归链接:"+getUrl(url));/*** 加密、解密*/// String path1 =// "https%3a%2f%2fs.click.taobao.com%2ft%3fe%3dm%253D2%2526s%253DshhycMgyX5YcQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67gtlG6lwPBS0UkCu4LW4fHWggE%252B81xYdaYgwvAJKzKRhR0QUH89hs6odoD3G8jExAxAqvUhwaPOiypAbhWWbtazmAClNJkpsCzHrKHhQWCLYttvJ9Z4G1Zg%253D%26pvid%3d10_183.135.6.227_21727_1512373605774%26sc%3dc2Z10Xw%26ref%3d%26et%3dXDdI5IoTDHiv%252FPC6VebP6npa%252BXvuZjy1";//// String path2 =// "https://s.click.taobao.com/t?e=m%3D2%26s%3DshhycMgyX5YcQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67gtlG6lwPBS0UkCu4LW4fHWggE%2B81xYdaYgwvAJKzKRhR0QUH89hs6odoD3G8jExAxAqvUhwaPOiypAbhWWbtazmAClNJkpsCzHrKHhQWCLYttvJ9Z4G1Zg%3D&pvid=10_183.135.6.227_21727_1512373605774&sc=c2Z10Xw&ref=&et=XDdI5IoTDHiv%2FPC6VebP6npa%2BXvuZjy1";// System.out.println("解密后:" + unescape(path1));// System.out.println("正确值:" + path2);}/*** 递归获取重定向地址* * @param path* @return* @throws Exception*/private String getRedirectUrl(String needRedirectUrl) throws Exception {HttpURLConnection conn = (HttpURLConnection) new URL(needRedirectUrl).openConnection();conn.setInstanceFollowRedirects(false);// conn.setConnectTimeout(8000);/*** 递归找到最终的url(包含location)*/if (conn.getHeaderField("location") == null)return needRedirectUrl;elsereturn getRedirectUrl(conn.getHeaderField("location"));// }/*** 方法二*/// //创建一个http请求// HttpClient client = new HttpClient();// //用header的请求方式,减少返回值和一些非必要获取的信息// HttpMethod method = new HeadMethod(url);// HttpParams params = client.getParams();// params.setParameter(AllClientPNames.HANDLE_REDIRECTS, false);// client.executeMethod(method);// //获取链接// url = method.getURI().getURI();// //释放链接(重要)// method.releaseConnection();}/*** 不递归获取跳转链接* * @author Yien* @when 2017年12月5日 下午4:09:47*** @param path* @return* @throws Exception*/private String getUrl(String path) throws Exception {URL url = new URL(path);HttpURLConnection conn = (HttpURLConnection) url.openConnection();conn.getResponseCode();conn.setInstanceFollowRedirects(true);String realUrl = conn.getURL().toString();conn.disconnect();// System.out.println(realUrl);return realUrl;}/*** 淘宝客链接最后跳转淘宝链接* * @author Yien* @when 2017年12月5日 下午4:03:40*** @param path* @return* @throws Exception*/public String getBaseUrl(String redirectUrl, String tu) throws Exception {HttpURLConnection conn = (HttpURLConnection) new URL(redirectUrl).openConnection();conn.setInstanceFollowRedirects(false);// conn.setConnectTimeout(8000);/*** tu为包含location的最终url*/// String tu =// "https://s.click.taobao.com/t_js?tu=https%3A%2F%2Fs.click.taobao.com%2Ft%3Fe%3Dm%253D2%2526s%253DshhycMgyX5YcQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67gtlG6lwPBS0UkCu4LW4fHWggE%252B81xYdaYgwvAJKzKRhR0QUH89hs6odoD3G8jExAxAqvUhwaPOiypAbhWWbtazmAClNJkpsCzHrKHhQWCLYttvJ9Z4G1Zg%253D%26pvid%3D10_183.135.6.227_21727_1512373605774%26sc%3Dc2Z10Xw%26ref%3D%26et%3DXDdI5IoTDHiv%252FPC6VebP6npa%252BXvuZjy1";/*** 设置请求行*/conn.setRequestProperty(HttpHeaders.REFERER, tu);// System.out.println(conn.getURL());return getRedirectUrl(conn.getHeaderField("Location"));}/*** URL解密* * @author Yien* @when 2017年12月5日 下午4:26:51*** @param str* @return*/public String unescape(String str) {try {// 将application/x-www-from-urlencoded字符串转换成普通字符串return URLDecoder.decode(str, "GBK");} catch (UnsupportedEncodingException e) {// TODO Auto-generated catch blocke.printStackTrace();return null;}}/*** Url加密* * @author Yien* @when 2017年12月5日 下午4:27:04*** @param str* @return*/public String escape(String str) {try {// 将普通字符创转换成application/x-www-from-urlencoded字符串return URLEncoder.encode(str, "GBK");} catch (UnsupportedEncodingException e) {// TODO Auto-generated catch blocke.printStackTrace();return null;}}
}

更新1简洁版代码:

import java.net.URLDecoder;import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager;
import org.apache.commons.httpclient.methods.GetMethod;
import org.apache.commons.httpclient.params.HttpMethodParams;public class 转淘宝链接 {public static void main(String[] args) {String urlStr = "http://s.click.taobao.com/t?e=zGU34CA7K%2BPkqB07S4%2FK0CITy7klxxrJ35Nnc0ls" +"8UNch6eorWAPrhuAvw2mQW2OJDeSwknfCSiKd622D%2BDnIc9QSYrG4navJ4t7sfX4ek43cWA%3D";HttpClient client;client = new HttpClient(new MultiThreadedHttpConnectionManager());client.getHttpConnectionManager().getParams().setConnectionTimeout(10000);client.getParams().setParameter(HttpMethodParams.USER_AGENT, "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)");  //让服务器认为是IEGetMethod get = new GetMethod(urlStr);get.setFollowRedirects(false); //禁止自动重定向try {int iGetResultCode = client.executeMethod(get); String _refer = get.getResponseHeader("location").getValue(); //打印地址GetMethod get2 = new GetMethod(URLDecoder.decode(_refer.split("tu=")[1]));get2.addRequestHeader("Referer", _refer);get2.setFollowRedirects(false); //禁止自动重定向int iGetResultCode2 = client.executeMethod(get2); String realUrl = get2.getResponseHeader("location").getValue(); //打印地址System.out.println("REAL URL: "+realUrl);GetMethod get3 = new GetMethod(realUrl);int iGetResultCode3 = client.executeMethod(get3); String responseBody = get3.getResponseBodyAsString();
//            System.out.println("Response Body: "+responseBody);System.out.println(responseBody.substring(responseBody.indexOf("sellerRate=" +"")+12,responseBody.indexOf("&", responseBody.indexOf("sellerRate="))));} catch (Exception ex) {ex.printStackTrace();} finally {get.releaseConnection();}
}}

淘客链接转成正常淘宝链接JAVA代码实现相关推荐

  1. 大淘客cms php版本,大淘客cms频繁出现 500错误页面临时解决方法

    使用大淘客cms建站的人还是很多的,最近高洁发现,自从上次大淘客官网被攻击后大淘客cms节点就经常 出现 500 错误页面. 正常我们问大淘客客服他们都会推到空间的问题上,其实这个跟我们本身的空间是没 ...

  2. 微博淘客,微博跳转手淘app,微博淘客链接转换,淘客微博防屏蔽链接,微博淘客如何推广

    微博淘客防屏蔽的方法有哪些?相信现在作为淘客的朋友们都已经发现在微博里发一些淘宝客就会被立刻屏蔽掉了,这就让很多朋友很苦恼,今天小编给大家介绍的是关于微博淘客防屏蔽的方法有哪些的内容,有想了解的小伙伴 ...

  3. 淘客订单查询策略:淘宝客订单要怎么查?如何实时跟踪用户付款退款等订单状态变化?如何实时结算?

    淘客订单查询策略要怎么安排,可以实时跟踪用户付款.退款等订单状态变化? 如何做到实时跟踪用户订单确认收货并与他结算返利或佣金? 首先要知道目前淘宝客的订单接口的特性,它是按照一个指定的起始时间(sta ...

  4. 淘客技术总结-如何获取二合一链接的优惠券信息

    ,我们可以通过mtop.alimama.union.hsf.coupon.get 这个接口获取到最新的优惠券信息: mtopjsonp1({"api":"mtop.ali ...

  5. 大淘客的index.php,大淘客网站报错无法正常访问解决方法

    更新日志: 2019/04/28 版本号:3.3 针对新版本大淘客进行了更新 2019/03/11 版本号:3.2 删除了大淘客无效节点 2019/01/16 版本号:3.1 修复大淘客官方服务器节点 ...

  6. 做淘客怎么引流?淘客推广技巧,淘客引流方法有哪些?

    引流也可以叫吸粉或者拉新,每个人的叫法不一样,无论哪个行业,都是需要新客户的.淘客的话很多人喜欢称之为拉新.只有持续不断的新用户,淘客才可以赚钱.但是持续且优质的流量就难了.对于淘客来说,真实精准的流 ...

  7. 做淘客太难?一个淘客三年来的经历与心得

    接触淘宝客是2010年9月了,那会淘宝客已经很流行了,因为淘宝客当时应该算是一份高收入兼职吧,当时也是因为一个网上的老哥告知,淘宝客很赚钱,所以报着试试的心态进入这个高竞争的"兼职行业&qu ...

  8. qq群淘客怎么引流?淘客新手如何利用qq群引流?

    QQ群一直以来都是淘客的用户落地的一个渠道,厉害的淘客手下基本上都有几十甚至几百个这样的QQ群,自从微信的群发和机器人被打压之后,很多淘客又回到了QQ群,可见 QQ容易操作也容易进入,淘客使用度更高, ...

  9. 大淘客的index.php,大淘客配置教程

    ## **大淘客配置教程** >[info]第一步:注册与登录 打开浏览器,在网址栏输入大淘客官网 www.dataoke.com ,打开后,点击左上角的注册,进行注册,注册完毕之后,登录大淘客 ...

  10. as 怎么将多个cpp文件代码编译成so_你编写的Java代码是咋跑起来的?

    如果你是一名 Java 开发人员,你肯定指定 Java 代码有很多种不同的运行方式.比如说可以在开发工具(IDEA.Eclipse等)中运行,可以双击执行 jar 文件运行,也可以在命令行中运行,甚至 ...

最新文章

  1. 有了这个工具,不执行代码就可以找PyTorch模型错误
  2. hdu1171 转化01背包,组合
  3. python爬虫(四)_urllib2:handle处理器和自定义opener
  4. 06540计算机网络考试大纲,2020年自考06540计算机网络基本原理复习资料(7)
  5. Go的Ducktype
  6. java能够运行的原理_JAVA程序运行原理分析(一)
  7. python 文件遍历
  8. Android Bitmap 开源图片框架分析(精华四)
  9. nginx root与alias区别
  10. 【Java】编程思想汇总ing
  11. 2021年危险化学品生产单位安全生产管理人员试题及解析及危险化学品生产单位安全生产管理人员模拟试题
  12. 【华为2019年校园招聘】A计划 实习面试流程
  13. 数据大屏之跑马灯功能
  14. FaceBook到底验证个啥?
  15. Python和FFmpeg将语音记录转换成可共享的视频,非常炫酷。
  16. mac(苹果)电脑有网,浏览器上不了网了,打开不了网页,但是微信、QQ正常使用,如何解决?
  17. Unreal Engine 4 系列教程 Part 8:粒子系统教程
  18. 维护异地恋的十大方法
  19. 荣盛发展,或正在步华夏幸福后尘
  20. 2017第十届成都国际照明及LED展览会会刊(参展商名录)

热门文章

  1. centos界面的转换+快捷键的使用
  2. 华为matebook键盘失灵
  3. c语言中的EOF是什么意思
  4. 浅谈游戏《celeste蔚蓝》
  5. 计算机文件自定义排序6,文件夹如何自定义排序
  6. 转:稻盛和夫:幸福的那些“法”,背后承载的“道”是什么?
  7. 小四哥的故事——访中联绿盟陈庆
  8. 给加西亚的信——余世维——赢在执行
  9. 2022-01-05 网工基础(十九)NAT基本原理与配置
  10. excel数据分析 - 10个清洗文本类函数