日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

python挖长尾词 源码,如何用代码挖局长尾关键词

發(fā)布時間:2024/10/5 python 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python挖长尾词 源码,如何用代码挖局长尾关键词 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

長尾關(guān)鍵詞(Long Tail Keyword)是指網(wǎng)站上的非目標(biāo)關(guān)鍵詞但與目標(biāo)關(guān)鍵詞相關(guān)的也可以帶來搜索流量的組合型關(guān)鍵詞。對于做SEO的人來說,這個名字再也熟悉不過了,但是如何來挖掘長尾關(guān)鍵詞,對于沒有數(shù)據(jù)或者一定計算機(jī)知識的人來說,還是很有難度的。所以這里附上非常簡單的辦法,只要幾行代碼就能輕松搞定。

# -*- coding: utf-8 -*-

# flake8: noqa

__author__ = 'wukong'

import urllib

from urllib import urlencode

#配置您申請的appKey和openId

app_key="***"

open_id="***"

"""

request_url 請求地址

params 請求參數(shù)

method 請求方法

"""

def request_content(request_url,params,method):

params = urlencode(params)

if method and method.lower() =="get":

f = urllib.urlopen("%s?%s" % (request_url, params))

else:

f = urllib.urlopen(request_url, params)

content = f.read()

print content

def main():

domain="http://api.xiaocongjisuan.com/"

servlet="data/longtailword/mining"

method="get"

request_url=domain+servlet

#字典

params ={}

params["appKey"]=app_key

params["openId"]=open_id

#變動部分

params["keyword"]="學(xué)前教育"

params["upLimit"]=50

params["minLen"]=30

params["lSort"]="up"

request_content(request_url,params,method)

if __name__ == '__main__':

main()

當(dāng)然也可以用c#來實(shí)現(xiàn)

using System;

using System.Collections.Generic;

using System.Text;

using System.Net;

using System.IO;

namespace ConsoleApplication1

{

class Program

{

private static string appKey="yours";

private static string openId = "yours";

static string getResponseAsString(HttpWebResponse rsp, Encoding encoding)

{

System.IO.Stream stream = null;

StreamReader reader = null;

try

{

// 以字符流的方式讀取HTTP響應(yīng)

stream = rsp.GetResponseStream();

reader = new StreamReader(stream, encoding);

return reader.ReadToEnd();

}

finally

{

// 釋放資源

if (reader != null) reader.Close();

if (stream != null) stream.Close();

if (rsp != null) rsp.Close();

}

}

/*

* parameters 參數(shù)

* encode 編碼

*/

static string buildQuery(IDictionary parameters, string encode)

{

StringBuilder postData = new StringBuilder();

bool hasParam = false;

IEnumerator> dem = parameters.GetEnumerator();

while (dem.MoveNext())

{

string name = dem.Current.Key;

string value = dem.Current.Value.ToString(); ;

// 忽略參數(shù)名或參數(shù)值為空的參數(shù)

if (!string.IsNullOrEmpty(name))//&& !string.IsNullOrEmpty(value)

{

if (hasParam)

{

postData.Append("&");

}

postData.Append(name);

postData.Append("=");

if (encode == "gb2312")

{

postData.Append(System.Web.HttpUtility.UrlEncode(value, Encoding.GetEncoding("gb2312")));

}

else if (encode == "utf8")

{

postData.Append(System.Web.HttpUtility.UrlEncode(value, Encoding.UTF8));

}

else

{

postData.Append(value);

}

hasParam = true;

}

}

return postData.ToString();

}

/**

*

* @param url 請求地址

* @param params 請求參數(shù)

* @param method 請求方法

* @return 請求結(jié)果

* @throws Exception

*/

static string requestContent(string url, IDictionary parameters, string method)

{

if (method.ToLower() == "post")

{

HttpWebRequest req = null;

HttpWebResponse rsp = null;

System.IO.Stream reqStream = null;

try

{

req = (HttpWebRequest)WebRequest.Create(url);

req.Method = method;

req.KeepAlive = false;

req.ProtocolVersion = HttpVersion.Version10;

req.Timeout = 5000;

req.ContentType = "application/x-www-form-urlencoded;charset=utf-8";

byte[] postData = Encoding.UTF8.GetBytes(buildQuery(parameters, "utf8"));

reqStream = req.GetRequestStream();

reqStream.Write(postData, 0, postData.Length);

rsp = (HttpWebResponse)req.GetResponse();

Encoding encoding = Encoding.GetEncoding(rsp.CharacterSet);

return getResponseAsString(rsp, encoding);

}

catch (Exception ex)

{

return ex.Message;

}

finally

{

if (reqStream != null) reqStream.Close();

if (rsp != null) rsp.Close();

}

}

else

{

//創(chuàng)建請求

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url + "?" + buildQuery(parameters, "utf8"));

//GET請求

request.Method = "GET";

request.ReadWriteTimeout = 5000;

request.ContentType = "text/html;charset=UTF-8";

HttpWebResponse response = (HttpWebResponse)request.GetResponse();

Stream myResponseStream = response.GetResponseStream();

StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8"));

//返回內(nèi)容

string retString = myStreamReader.ReadToEnd();

return retString;

}

}

static void Main(string[] args)

{

String domain = "http://api.xiaocongjisuan.com/";

String servlet = "data/longtailword/mining";

String method = "get";

String url = domain + servlet;

var parameters = new Dictionary();

parameters.Add("appKey", appKey);

parameters.Add("openId", openId);

//變動部分

parameters.Add("keyword", "學(xué)前教育");

parameters.Add("upLimit", 50);

parameters.Add("minLen", 30);

parameters.Add("lSort", "up");

string result = requestContent(url, parameters, method);

Console.WriteLine(result);

Console.Read();

}

}

}

其他的語言實(shí)現(xiàn)方式可以跳轉(zhuǎn)到長尾關(guān)鍵詞接口去查看,代碼上還是非常簡潔的,就也不再做過多解釋。

總結(jié)

以上是生活随笔為你收集整理的python挖长尾词 源码,如何用代码挖局长尾关键词的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。