易灵微课听很多从事广告投放的小伙伴诉苦,说上班就查排名啊!查排名啊!查排名啊!蛋甚是疼,就想着有没有办法实时自动抓取百度(当然搜狗、360、神马啥的都可以)竞价排名,那就不用自己手动来查排名了!还别说,真的有!易灵微课现在就教你用Excel实时查看竞价广告的排名
工具/原料
电脑
Excel2016及以上版本
易灵微课账号
python2.7及以上版本
1、环境搭建
1、推荐使用用python工具备注:装轮子的时候推荐使腩柽鬣盛用pip或者easy_install,以下环境搭建非本文重点,请各位童鞋找度娘帮忙,实在实在搞不定的话也可以联系我,不要看要安装擒歙常泺那么多东西太麻烦,其实这只是冰山的一个小角,要学的还有很多呢!1)python2.7(我是用的python,当然需要安装python环境了,为什么不选py3呢?因为py2的轮子比较丰富,可能有的在py3上面不支持,而且py3的部分语法跟py2有点区别,特别是print函数)
2、2)使腩柽鬣盛用python现成的轮子:A、requests库(python爬虫经典库,当然也有很多别的,比如urllib、Scrapy框架等,但是我感觉requests用的比较顺手)B斤舻浑趸、xlwings库(操作excel的库,把获取到的排名情况写到Excel,其他的比如xlrd、xlwt,一个只能读,一个只能写,还不能覆盖了写,好像有点操蛋哈。其实也可以把结果直接打印在控制台或是存在文档里面,都可以的)C、lxml库(这个库用来使用XPath获取爬到的页面内容,比如竞价位的标题和url,我已经抛弃了BeautifulSoup了,因为感觉它有点笨拙,个人见解,不喜勿喷)
3、3)Excel2016(我是用的这个版本,其他版本也可以兼容xlwings)
4、4)SublimeText3(用来编写和运行python代码的,为什么用这个,个人喜好)
2、连接python和excel
1、现在基本的环境都配置好了,下面要开始连接python和Excel了,在Excel里面跑python代码,从此告别VBA,是不是很酷啊!最简单的方法就是打开cmd(开始-运行-输入cmd回车或者win键+R打开运行输入cmd并回车),打开cmd后默目录如图是C:\Users\Administrator(不同电脑这个目录可能不同);(图一所示)
2、我现在要把当前目录切换到C盘根目录,输入下面命令并回车:cd/然后输入下面命令并回车:xlwingsquickstartwwt
3、出现如图所示,则表明运行成功。
4、然后在C盘会生成一个以wwt命名的文件夹,里面有两个文件:一个是wwt.xls葡矩酉缸m文件,这是打开宏的excel格式,爬取到的数赍铈于脏据就写入到该文件;另外一个是wwt.py文件,python命令就写在这个文件。备注:链接excel和python有多种方法,具体见xlwings官方给出的使用文档。打开wwt.xlsm文件,然后打开vba代码编辑窗口(Alt+F11),如图所示:
5、双击Module1模块,复制下面代码进去,SubGetSEM()RunPython(争犸禀淫"importwwt;wwt.main()")EndSu芟鲠阻缒b备注:以上代码是在VBA中自定义一个以GetSEM()命名的宏,该宏会出现在Excel中的开发工具—宏模块中。RunPython("importwwt;wwt.main()")是xlwings提供的代码,意思是运行python代码,“importwwt”是导入wwt.py文件,“wwt.main()”是运行wwt.py文件中的main()函数,这个宏是连接python和Excel的桥梁。至此,连接python与Excel2016完成,可以在Excel中跑python代码了!保存退出,OK!
3、复制代码到wwt.py
1、这里的代码只是实现了一个最简单的查排名的功能,可以根据自己需要修改。注意:python是一门有强迫症的语言,上下前后左右缩进一定要对其,否则会报错!
4、运行wwt.xlsm
1、万事俱备,只欠东风,我们什么都不欠了,就欠你打开wwt.xlsm,然后点几下了!
2、按照如图箭头所示顺序,执行以下,排名情况就会展现在你面前!