哈哈,帅哥出场怎么没有一点掌声呢,小姐姐小哥哥噪起来,let's cheer up,打起精神开始学习咯~本周我们要分享的是什么呢?来说说网站的浏览量吧,毕竟咱们做网站,写博客,肯定是希望越来越多的人能看到你自己写的东西啊,这样就可以狠狠的在面试官面前装个逼了,我可是访问量上百万的博主啊,?,那么如何使你的网站访问量噌噌的往上涨呢?除了你本身博客的质量和你强大的粉丝团以外,小编在教你一个黑科技,用Python来刷浏览量.
在这一部分,我会分五部分来说:
a. Python
b.webdriver的安装
c.selenium的安装
ok,话不多说,干起来吧~
一、网站流量的计算及区别介绍
ok,提一个问题,假设中国的34个省份(我就不区分省、直辖市、特别行政区这些了,这里只简单借此作为一个例子)每个省均只有一个接入互联网的网关,即只能通过该网关访问互联网资源,也就是说只有一个公网ip,我的问题是:假设这34个省每个省的所有用户每天都访问一次我的网站,试问24个小时之后,我网站的浏览量是所有用户的个数还是34,what about 独立ip?
答: 拿起你的小本本,开始做笔记了哟~这里涉及一些计算机网络的知识.为了照顾小姐姐我尽量说的通俗一点~首先给出答案,网站的访问量是所有访问用户的总个数,独立IP是34.解释一波:
二、如何刷网站流量(扯一点SEO的知识)
大家可以参考的我的另一篇技术分享(http://www.shipudong.com/2019/04/05/yi-dong-zhi-fu-na-xie-shi/)去了解更多关于搜索引擎的知识.
先给大家看下几个主流网站对我的排名情况:
从这个关键词搜索的词条排名情况和词条数目也能反映出这个搜索引擎的某些优缺点(当然有我自身技术的原因),单从爬虫速度来说: Google>搜狗>百度>360,搜狗应该算是爬虫速度频率比较高的了,百度对于我的网站的收录还有一些死链,360就不用说了,词条数和死链都是最少的,Google还收录了我网站的照片呢,而国内的三个均没有收录.细节见差异啊~
SEO属于网络营销人员的工作,这里我稍微点到为止,就不在专业的小可爱们面前装逼了.咱们做一个个人网站,为的就是让跟多的人能通过这个平台了解到自己的技术、甚至了解到自己,毫无疑问网站浏览量是一个相对权威的数据,虽然有的人可能说通过刷流量软件或者百度竞价(俗称"花钱买热搜")可以很快的提高,不过,我想说的是:既然认真做了网站,就别搞这些虚的,技术是真.
网站流量的提高:
三、应用的安装
安装完之后通过:
Python -V
在cmd里查看版本号,若显示如下,则代表安装成功,哎哟,你真棒~
借用pip工具:
pip install selenium
ok,准备工作差不多就可以了,IDE这些大家自行解决(推荐:Pycharm)
四、 举个例子
大家自行搜索selenium的官方文档,同时也可以结合着我的例子进行学习
1. 自动打开"石璞东"网站页面
from selenium import webdriver
browser=webdriver.Chrome('C:\Program Files(x86)\Google\Chrome\Application\chromedriver.exe')
browser.get("http://www.shipudong.com")
【注】:可以通过配置环境变量直接使用webdriver.Chrome()来模拟一个浏览器,也可以通过webdriver.Chrome('C:\Program Files(x86)\Google\Chrome\Application\chromedriver.exe')直接来进行模拟.
2. 自动打开"百度"页面并输入关键词"石璞东"进行搜索
from selenium import webdriver
browser = webdriver.Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
browser.get("http://www.baidu.com")
browser.find_element_by_id('kw').send_keys("石璞东")
browser.find_element_by_id('su').click()
看下搜索框和提交按钮对应的HTML元素:
【注】: 通过selenium提供的API找到搜索框和提交按钮,然后通过selenium来模拟填写关键词和点击提交按钮两种行为.
【再注】: 给大家看一可能是个百度非官方Python脚本(http://baidu.physton.com/?q=石璞东)的例子,有没有觉得这和我的这个例子有点异曲同工的味道呢,有就对了~哈哈
3. 网站浏览量的刷新
我在第一部分已经说过了,这里再重述一遍:
我在这里通过这个例子是为了向大家介绍selenium的使用,对于浏览量希望大家还是通过实力去获得?来,说说思路,既然一个网站的浏览量通过多次的点击或者多次的刷新就可以提高,它跟ip地址没有一毛钱关系,那么我就可以写一个Python脚本让脚本来帮我执行,两个思路:
from selenium import webdriver
import time
def controlBrowser():
driver = webdriver.Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
driver.maximize_window()
time.sleep(5)
print("5秒后我就要访问石璞东的网站咯")
driver.get("http://www.shipudong.com")
time.sleep(5)
print("5秒后我就要关闭浏览器咯")
print("============================");
driver.close()
if __name__=="__main__":
while 1:
controlBrowser()
from selenium import webdriver
import time
def controlBrowser():
driver = webdriver.Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
driver.get("http://www.shipudong.com")
time.sleep(5)
driver.refresh()
if __name__=="__main__":
while 1:
controlBrowser()
为什么要间隔一段时间呢,这个问题很好,因为访问一个网站的实质就是:客户端发送请求,服务器端按照要求返回该网站的所有内容,也就是需要通过来网络传输数据,因为网络传输过程中的各种时延是不能确定的,所以这里留了一个时间间隔.
浏览量确实提升了呢~
五、思路提供
还有两个例子,这里小编就不写代码了(大家放心,我文章中所有涉及到的例子在明年我考完研之后我都会把代码贴出来的),说下思路就行,哪个小可爱想写或者有兴趣,私聊我:
答: 在web端观看网络公选课视频,大概在视频时长一半的某个时间点内,会出现答题页面,这个时候视频进度会终止,所以对于一些开着电脑刷课的同学很是苦恼,得不停的去点击,这时候如果你懂Python的话,分分钟让你解决烦恼.简单来说,就是模拟一个点击事件:当页面弹出答题页面的时候通过selenium模拟点击操作,随便在ABCD选项中点击一个并点击"关闭按钮",很简单吧,那你就错了,问题是你如何知道具体什么时候出现大体页面呢?这里给两个思路:
a.正面硬刚(获取视频的所有帧,通过图像识别算法进行相似度的分析)是不是有点太难了呢?
b. 换个思路(那硬刚不行,我就换个思路),已知基本上在视频时长的一半处会弹出答题页面,那我就设置一个定时(定时时间略大于视频长度的一半),然后通过selenium模拟浏览器的点击操作
写一下伪代码:
from selenium import webdriver
browser = webdriver.Chrome("webdriver的存放路径")
browser.get("投票链接地址")
browser.delete_all_cookies()#清理cookie
browser.find_element_by_id("投票按钮的id").click()
browser.close()#做完之后别忘了关掉浏览器装作啥也没发生过?
哈哈,本周的分享就结束了,希望大家把刷课、投票这些当作一个例子去更好的理解selenium更好的使用它,而不是通过它做什么流氓软件破坏市场对吧,做一个懂规矩的软件人~