获取域名批量关键词百度排名及得分情况

  • By 青岛seo
  • 2016-03-21
  • 点击:
  • 排名,python

 应群里朋友的要求,用python写了一个程序,实现的目的是:给定一批关键词,列出在这些关键词在百度上排名最多的域名及排名数量、各个域名的得分情况。呵呵,不会表述了,要下图这样的效果:

效果图

 

这个程序的最大好处是能快速、准确地定位行业的竞争对手及竞争力。

运行本程序需要预先安装pycurl模块和beautifulsoup模块。pycurl模块主要用来下载源代码,urllib模块和request模块在运行数量较多关键词的时候经常莫名其妙地死掉,相比之下pycurl模块则稳定得多,到目前为止还没有出现运行崩溃的情况。就本程序来说,使用beautifulsoup模块比使用正则表达式要简便,因此使用beautifulsoup模块来获取网页中特定内容。

pycurl模块下载:pypi.python.org/pypi/pycurl   

beautifulsoup模块下载:www.crummy.com/software/BeautifulSoup/bs4/download/4.0/

使用本程序前,请预先准备好自己所在行业的关键词,放在一个文本文件中,每行一个关键词,关键词很多的可以抽样。

按照点击率的分布情况计算关键词的得分(只计算排名首页的关键词),排在第一名的关键词得28.56分,第二名的关键词得19.23分,依此类推,如图:

分数示意图

 

程序分为按照根域名计算得分和按照子域名计算得分。直接运行程序得到的是根域名版,如果想按子域名计算,只需将此行注释掉:

运行完程序后将会生成一个score.csv文件,打开后排序一下就得到自己想要的结果(我是按总得分排序),第一列是域名,第二列是词数,第三列是平均得分(总得分/词数),第四列是总得分,如图:

统计得分表

 

此程序主体部分是在网上找的,我在原程序基础上按照我的想法进行了优化,改动的地方主要有:增加区分根域名得分和子域名得分、百度改版后的代码调整、将request模块更换成pycurl模块、遇到验证码时的处理,此外还将代码进行了精减。

最后附上代码:

keyword_count_score.py
文件类型: .py keyword_count_score.py

 

你可能对它们感兴趣

百度链接提交-主动推送程序Python版
批量获取爱站的网站关键词排名(带真实URL)
最近总结的企业站优化排名的经验
用Python模拟搜索引擎蜘蛛