直通车的选词优化。如何利用直通车后台信息选出匹配的基础好词。用python完成相应的思路,呈现出结果。
我们都知道打造单品,引来精准流量,获取足够多的淘宝seo权重,直通车尤为重要,但是如何在直通车选词这个基础上不失误呢,下面介绍一个简单的方法。
不管是下拉框,还是竞店转化词,还是top20万,生意参谋500词,下拉框等等。首先我们要有足够多的词去选。所以可以进行如下步骤选出比较好的词。
1,选取首词集合wordSet.txt;里面词的数目特别多,但是不是非常匹配我们的产品,同样本身附带的点击转化都不是特别好。
2,因为wordSet中很多词都不是特别匹配,那么我们要设定和自己产品匹配的词,所以我们选取元素 item.txt;把我们的元素都放在这个txt中,例如网布,时尚,简约,夏季,[核心类目词]等。
3,为了在直通车中查询行情信息,减少工作量,尽量也不要重复选词。
会出现重复选词的原因:直通车会对关键词加"子",忽视空格,单元切割;例如"电脑椅子 家用转椅"和"转椅电脑椅 家用"是同一个词。
注意点:在程序实现中怎么实现这个处理——用set();oldSet = [];每次产生新的元素去掉空格和子的都往oldSet里面添加,同时用newSet记录下来该词。当再产生新的元素,去掉空格和"子";选择条件问它是否在这个集合oldSet中添加过了。若有pass否则添加。这个虽然不是很完美,但是解决了基本所有的情况,并且容易实现。
4,在直通车后台的流量解析中对选择出来的关键词,调整信息取行业7天移动pc的参数信息;呈现到infomation.txt;每个关键词按照对应格式存储下来。这里不方便爬取,词又不是很多,所以直接选择的复制粘贴。
关于这个文本处理,在我的这篇博客中有记录。直通车后台选词的文本处理
5,通过对应的正则匹配或者字符串切割,生成需要的信息进行存储,其中columns 对应词标的生成result.csv
我们都知道打造单品,引来精准流量,获取足够多的淘宝seo权重,直通车尤为重要,但是如何在直通车选词这个基础上不失误呢,下面介绍一个简单的方法。
不管是下拉框,还是竞店转化词,还是top20万,生意参谋500词,下拉框等等。首先我们要有足够多的词去选。所以可以进行如下步骤选出比较好的词。
1,选取首词集合wordSet.txt;里面词的数目特别多,但是不是非常匹配我们的产品,同样本身附带的点击转化都不是特别好。
2,因为wordSet中很多词都不是特别匹配,那么我们要设定和自己产品匹配的词,所以我们选取元素 item.txt;把我们的元素都放在这个txt中,例如网布,时尚,简约,夏季,[核心类目词]等。
3,为了在直通车中查询行情信息,减少工作量,尽量也不要重复选词。
会出现重复选词的原因:直通车会对关键词加"子",忽视空格,单元切割;例如"电脑椅子 家用转椅"和"转椅电脑椅 家用"是同一个词。
注意点:在程序实现中怎么实现这个处理——用set();oldSet = [];每次产生新的元素去掉空格和子的都往oldSet里面添加,同时用newSet记录下来该词。当再产生新的元素,去掉空格和"子";选择条件问它是否在这个集合oldSet中添加过了。若有pass否则添加。这个虽然不是很完美,但是解决了基本所有的情况,并且容易实现。
4,在直通车后台的流量解析中对选择出来的关键词,调整信息取行业7天移动pc的参数信息;呈现到infomation.txt;每个关键词按照对应格式存储下来。这里不方便爬取,词又不是很多,所以直接选择的复制粘贴。
关于这个文本处理,在我的这篇博客中有记录。直通车后台选词的文本处理
5,通过对应的正则匹配或者字符串切割,生成需要的信息进行存储,其中columns 对应词标的生成result.csv
两个py文件,一个是1-3步骤(demo1.py),一个是4-5步骤(demo2.py);思路非常清晰。
demo1.py __准备了两个备用txt文件(strings1,strings存储).
def strToD(ss):
for x in range(len(ss)):
ss[x] = ss[x].split('\n')[0]
return ss
strings = open('F:\\By\\September\\160918\\resData\\chooseOf2.txt').readlines();
target066 = open('F:\\By\\September\\160918\\resData\\item.txt').readlines();
strings = strToD(strings)
strings1 = strToD(open('F:\\By\\September\\160918\\resData\\chooseOf.txt').readlines())
target066 = strToD(target066)
def setKw2066(strings,target066):
#存储目标字格
target = set()
for ss in target066:
for s1 in ss:
if(s1 in target):
pass
else:
target.add(s1)
result = []
for string in strings:
if((set(string) &target) == set(string) ):
result.append(string)
return result
result = setKw2066(strings1,target066)
result.extend(setKw2066(strings,target066))
'''把result 写入文件'''
def writeRes(result, string0 = 'res_kw', hz = None):
file = open('F:\\By\\September\\160918\\resData\\'+ string0 + '.txt', 'w+')
for i in result:
file.write(hz + i + hz)
file.write('\n')
file.close
''' 开始去重 '''
def uni2Kw(result):
tt = []
kk = []
for x in result:
if(set(x) not in tt):
if('子' in set(x)):
set(x).remove('子')
if(' ' in set(x)):
set(x).remove(' ')
tt.append(set(x))
kk.append(x)
else:
pass
return kk
kk = uni2Kw(result)
writeRes(kk, 'infomation1', '——')
demo2.py__其中setIndex.txt存储导出表格的头元素。
import re
import numpy as np
import pandas as pd
#去掉 “/n”
def remove_n(l):
for i in range(len(l)):
l[i] = l[i].split('\n')[0]
return l
set_wd = remove_n(open('F:\\By\\September\\160918\\resData\\lib2\\infomation.txt','r+').readlines())
set_word = [] #index
sss = []
for i in range(len(set_wd)):
if(set_wd[i] == ''):
continue
match_word = re.match(r'——(.*)——', set_wd[i], re.I|re.M)
if(match_word):
set_word.append(match_word.group(1))
print ('读取到关键词[ '+ match_word.group(1) +' ]的信息')
#sss.append(match_word.group(1))
else:
kk = set_wd[i].split(':')
if(len(kk)<2):
sss.append('设备')
else:
sss.append(kk[1])
data = np.array(sss)
data.shape = len(sss)/18,18
columns = remove_n(open('F:\\By\\September\\160918\\resData\\lib2\\setIndex.txt','r+').readlines())#columns
df = pd.DataFrame(data, index = set_word,columns = columns)
print (df)
df.to_csv('C:\\Users\\Administrator\\Desktop\\result.csv')