关闭

一个站长常用的类似于获取关键词排名的工具类

标签: SEO排名站长关键词工具
398人阅读 评论(0) 收藏 举报
分类:

原文:一个站长常用的类似于获取关键词排名的工具类

源代码下载地址:http://www.zuidaima.com/share/1574292163382272.htm

可以通过指定关键词和站点名来自动抓取百度的搜索结果从而得知自己的网站在某个搜索词的排名,类似于http://www.aizhan.com/siteall/zuidaima.com/

一个站长常用的类似于获取关键词排名的工具类

01 import java.io.BufferedReader;
02 import java.io.InputStream;
03 import java.io.InputStreamReader;
04 import java.net.HttpURLConnection;
05 import java.net.URL;
06 import java.net.URLEncoder;
07  
08 public class AnyBaiduKeywordRank {
09  
10     public static String request(String url) {
11         StringBuffer res = new StringBuffer();
12         HttpURLConnection conn = null;
13         try {
14             URL serverUrl = new URL(url);
15             conn = (HttpURLConnection) serverUrl.openConnection();
16             conn.setRequestMethod("GET");// "POST" ,"GET"
17             conn.setConnectTimeout(10000);
18             conn.setReadTimeout(10000);
19             conn.connect();
20             InputStream ins = conn.getInputStream();
21             String charset = "UTF-8";
22             InputStreamReader inr = new InputStreamReader(ins, charset);
23             BufferedReader bfr = new BufferedReader(inr);
24             String line = "";
25             do {
26                 res.append(line);
27                 line = bfr.readLine();
28             while (line != null);
29             inr.close();
30             bfr.close();
31         catch (Exception e) {
32             e.printStackTrace();
33         finally {
34             if (conn != null) {
35                 conn.disconnect();
36             }
37         }
38         return res.toString();
39     }
40  
41     public static void main(String[] args) throws Exception {
42         String keyword = "分享";
43         String site = "javaniu";
44         keyword = URLEncoder.encode(keyword, "utf-8");
45         int p = 1;
46         int s = 10;
48         while (true) {
49             int pn = (p - 1) * s;
50             String _url = String.format(url, keyword, pn + "");
51             System.out.println("Request url " + _url);
52             String html = request(_url);
53             if (html.indexOf(site) != -1) {
54                 System.out.println("Find keyword");
55                 break;
56             }
57             p++;
58         }
59  
60     }
61 }

原理很简单,大家可以发挥想象力去抓取任意想象的数据。这不正是code的魅力么。


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    网站
    友情链接
    个人资料
    • 访问:484629次
    • 积分:8985
    • 等级:
    • 排名:第2067名
    • 原创:390篇
    • 转载:0篇
    • 译文:0篇
    • 评论:72条