ugg

简介:

[html] view plain copy

print?
  1. import java.io.BufferedReader;
  2. import java.io.BufferedWriter;
  3. import java.io.File;
  4. import java.io.FileReader;
  5. import java.io.FileWriter;
  6. import java.io.IOException;
  7. import java.io.InputStreamReader;
  8. import java.net.HttpURLConnection;
  9. import java.net.SocketException;
  10. import java.net.URL;
  11. import java.util.Properties;
  12. public class Test2 {
  13. public static void main(String[] args) {
  14. // getHost("http://www.youdaili.net/Daili/http/2572_4.html") ;
  15. File f = null ;
  16. BufferedReader br = null ;
  17. FileReader fr = null ;
  18. String s = "" ;
  19. String[] host = new String[2] ;
  20. try {
  21. f = new File("E:\\host.txt") ;
  22. fr = new FileReader(f) ;
  23. br = new BufferedReader(fr) ;
  24. s = br.readLine() ;
  25. while(s!=null) {
  26. System.out.println("换一次ip" + s);
  27. host = s.split(":") ;
  28. //******************************
  29. Properties sys = System.getProperties();
  30. sys.put("proxySet","true");
  31. sys.put("proxyHost",host[0]);
  32. sys.put("proxyPort",host[1]);
  33. System.setProperties(sys);
  34. //******************************
  35. getData() ;
  36. s = br.readLine() ;
  37. }
  38. } catch (Exception e) {
  39. System.out.println(e);
  40. }finally {
  41. try {
  42. if(br != null) {
  43. br.close();
  44. }
  45. if(fr != null) {
  46. fr.close();
  47. }
  48. } catch (IOException e) {
  49. e.printStackTrace();
  50. }
  51. }
  52. }
  53. public static void getData() {
  54. System.out.println("进入getData");
  55. URL url ;
  56. int responseCode ;
  57. HttpURLConnection httpURLConnection ;
  58. String str = "" ;
  59. BufferedReader br = null ;
  60. StringBuffer sb = new StringBuffer() ;
  61. InputStreamReader isr = null ;
  62. try {
  63. for(int i=0;i<200;i++){
  64. url = new URL("http://www.uggaustralia.cn/thisisugg/api.php?ctrl=page&action=voteWeibo&pid=4218") ;
  65. httpURLConnection = (HttpURLConnection)url.openConnection() ;
  66. httpURLConnection.setConnectTimeout(5000);
  67. httpURLConnection.setReadTimeout(5000);
  68. httpURLConnection.setRequestProperty("User-Agent","Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11") ;
  69. responseCode = httpURLConnection.getResponseCode() ;
  70. if(responseCode ==200){
  71. isr = new InputStreamReader(httpURLConnection.getInputStream(),"GBK") ;
  72. br = new BufferedReader(isr) ;
  73. while((str=br.readLine())!=null){
  74. sb.append(str) ;
  75. }
  76. }else{
  77. throw new SocketException() ;
  78. }
  79. System.out.println(sb.toString());
  80. if(sb.toString().contains("\"data\":2")) {
  81. break ;
  82. }
  83. sb = new StringBuffer() ;
  84. }
  85. } catch (Exception e) {
  86. System.out.println(e);
  87. }finally {
  88. try {
  89. if(br != null) {
  90. br.close();
  91. }
  92. if(isr != null) {
  93. isr.close();
  94. }
  95. } catch (IOException e) {
  96. e.printStackTrace();
  97. }
  98. }
  99. }
  100. /**
  101. * 获得有代理网上的ip
  102. */
  103. public static void getHost(String dailiURL) {
  104. URL url ;
  105. int responseCode ;
  106. HttpURLConnection httpURLConnection ;
  107. String str = "" ;
  108. BufferedReader br = null ;
  109. StringBuffer sb = new StringBuffer() ;
  110. InputStreamReader isr = null ;
  111. try {
  112. url = new URL(dailiURL) ;
  113. httpURLConnection = (HttpURLConnection)url.openConnection() ;
  114. httpURLConnection.setConnectTimeout(5000);
  115. httpURLConnection.setReadTimeout(5000);
  116. httpURLConnection.setRequestProperty("User-Agent","Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11") ;
  117. responseCode = httpURLConnection.getResponseCode() ;
  118. if(responseCode ==200){
  119. isr = new InputStreamReader(httpURLConnection.getInputStream(),"utf-8") ;
  120. br = new BufferedReader(isr) ;
  121. str = br.readLine() ;
  122. while(br.readLine()!=null){
  123. if(str.contains("@HTTP#")){
  124. str = str.replace("<p>", "").trim() ;
  125. str = str.substring(0, str.indexOf("@")) ;
  126. str += "\r\n" ;
  127. sb.append(str) ;
  128. }
  129. str = br.readLine() ;
  130. }
  131. System.out.println(sb.toString());
  132. HostwriteToFile(sb.toString()) ;
  133. }
  134. } catch (Exception e) {
  135. e.printStackTrace();
  136. }finally {
  137. try {
  138. if(br != null) {
  139. br.close();
  140. }
  141. if(isr != null) {
  142. isr.close();
  143. }
  144. } catch (IOException e) {
  145. e.printStackTrace();
  146. }
  147. }
  148. }
  149. /**
  150. * 把拿到的代理ip写入文件中
  151. * @param str
  152. */
  153. public static void HostwriteToFile(String str) {
  154. FileWriter fw = null ;
  155. try {
  156. fw = new FileWriter("E:\\host.txt",true) ;
  157. fw.write(str);
  158. fw.flush();
  159. fw.close();
  160. } catch (IOException e) {
  161. e.printStackTrace();
  162. }
  163. }
  164. }
目录
相关文章
|
5月前
|
Cloud Native 持续交付 开发者
云原生技术:构建现代应用的基石
【6月更文挑战第13天】在数字化转型的浪潮中,云原生技术以其独特的优势,为现代应用的开发和部署提供了强大的支持。本文将深入探讨云原生技术的核心概念、优势以及实践方法,帮助读者更好地理解和应用这一前沿技术。
|
存储 安全 测试技术
Docker学习路线5:在 Docker 中实现数据持久化
Docker 可以运行隔离的容器,包括应用程序和其依赖项,与主机操作系统分离。默认情况下,容器是临时的,这意味着容器中存储的任何数据在终止后都将丢失。为了解决这个问题并在容器生命周期内保留数据,Docker 提供了各种数据持久化方法。
529 0
|
开发框架 Windows
解决Electron在Windows 7下出现电脑白屏的方法
Electron是一种跨平台的桌面应用程序开发框架,但在Windows 7操作系统中,有时候可能会遇到Electron应用程序出现白屏的问题。本文将介绍两种常见的情况,并提供相应的解决方法,帮助您解决Electron在Windows 7下出现电脑白屏的问题。
1446 0
解决Electron在Windows 7下出现电脑白屏的方法
|
机器学习/深度学习 传感器 算法
基于蒙特卡洛模拟法计算电动汽车充电负荷附Matlab代码
基于蒙特卡洛模拟法计算电动汽车充电负荷附Matlab代码
|
算法 计算机视觉
NFT链游系统开发模式丨NFT链游项目系统开发流程
NFT链游系统开发模式丨NFT链游项目系统开发流程
130 0
|
SQL 关系型数据库 MySQL
阿里云分析型数据库MySQL版(AnalyticDB)测试初体验(2)
阿里云分析型数据库MySQL版(AnalyticDB)测试初体验
166 0
阿里云分析型数据库MySQL版(AnalyticDB)测试初体验(2)
|
JavaScript 数据库 前端开发