做流量到底是词重要,还是内容重要?本渣渣窃以为,应该是词重要,尤其是那些竞争度小的,长尾流量词,有了词库,你才有了内容的方向,才有了后续一系列的操作和计划,同时才有了流量预估和报告。
整体大盘来看,移动端的流量和搜索人数应该是大于PC端的数据,从百度相关搜索词就能够看出,百度移动端搜索的相关搜索词有两块位置,你是否发现,这个操作应该是方便用户点击,拉到中间或者拉到最后,都很方便用户点击,不会流失用户。
SORRY,图贴错了,这个词是百度屏蔽词,违禁词,没有搜索数据的!
LSP,本渣渣劝你保重身体!!
下面的才是本渣渣要贴的图!
python采集百度移动端搜索相关关键词,这里本渣渣简单的使用的正则re获取,仅供参考!
需要注意的某些违禁词是没有相关搜索数据的,需要做处理,这里就等着你处理了!!
使用需要准备一个关键词txt文档,keyss.txt,关键词一行一个!
运行效果
注意:移动端搜索采集,你需要更换移动端的ua协议头,这里本渣渣从网上获取了4800多条移动ua,仅供参考使用!
获取ua数据包
关注本渣渣微信公众号
回复 mua
附参考源码
#20210326 移动端相关关键词搜索采集 #微信:huguo00289 # -*- coding: utf-8 -*- import requests,random,re,time class Mbs(): def __init__(self): self.ua='' self.ua_list=[] self.load_keywords=[] self.keyword_lists=[] self.m_search="https://m.baidu.com/s?word=" #获取协议头列表 def get_uas(self): path = r"uadata.txt" with open(path, 'r') as f: datas = f.readlines() for data in datas: data = data.replace('\n', '') self.ua_list.append(data) print(f'>>已获取 {len(self.ua_list)} 条user-agent数据!') # 导入关键词 def lead_keywords(self): print('>> 正在导入关键词列表..') try: with open('keyss.txt', 'r', encoding='gbk') as f: self.load_keywords = f.readlines() except: with open('keyss.txt', 'r', encoding='utf-8') as f: self.load_keywords = f.readlines() print('>> 正在导入关键词列表成功!') print(f'共导入 {len(self.load_keywords)} 个关键词!') #获取百度移动搜索相关关键词 def get_keywords(self,keyword): print(f'>> 正在爬取采集关键词 {keyword} 相关关键词数据..') keyword_list = [] headers = {'user-agent': self.ua} url = f"{self.m_search}{keyword}" response = requests.get(url=url, headers=headers,timeout=6) print(response.status_code) html = response.content.decode('utf-8') # 获取中部词 mid_div_data = re.findall(r'大家还在搜</div>(.+?)<div class="c-result result"', html, re.S)[0] mid_a_data = re.findall(r'<a href=".+?" target=".+?" .+?><span .+?>(.+?)</span></a>',mid_div_data, re.S) print(mid_a_data) # 获取底部词 bot_div_data =re.findall(r'<div class=".+?">大家还在搜</div>(.+?)<div id="page-controller', html, re.S)[0] bot_a_data = re.findall(r'<a target=".+?" class=".+?" href=".+?"><span>(.+?)</span></a>', bot_div_data, re.S) print(bot_a_data) keyword_list.extend(mid_a_data) keyword_list.extend(bot_a_data) self.save(keyword_list) self.keyword_lists.extend(keyword_list) #保存关键词 def save(self,data): data=set(data) #去重 print('>> 正在保存相关关键词列表..') with open('keywords.txt', 'a+', encoding='utf-8') as f: f.write('\n'.join(data)) print('>> 正在保存相关关键词列表成功!') def main(self): self.lead_keywords() self.get_uas() self.ua = random.choice(self.ua_list) i=1 for keyword in self.load_keywords: print(f'>>正在爬取采集第 {i} 个关键词..') self.get_keywords(keyword) time.sleep(2) i=i+1 if __name__=='__main__': spider=Mbs() spider.main()