通过python+selenium3实现浏览器刷简书文章阅读量

yipeiwu_com6年前Python基础

准备工作

下载python,本文以python3.6为例。python3.6下载地址:python3下载地址,选择合适的版本安装。安装成功后,打开命令提示符,在其中输入python,显示如下信息,则说明安装成功。

C:\Users\Ubuntu>python
Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06:12) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

安装selenium3,打开命令提示符,输入pip install selenium,selenium会自动下载安装。安装完成后,打开命令提示符,输入python,然后在python环境下输入import selenium,如果没有提示错误,则安装成功。

C:\Users\Ubuntu>python
Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06:12) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import selenium
>>>

下载浏览器驱动,本文以火狐为例,火狐的selenium驱动为geckodriver。geckodriver下载地址:geckodriver下载地址,下载解压后,将geckodriver.exe文件放到python目录下,本例地址为C:\Program Files\Python36,也可以将geckodriver.exe加入环境变量。

刷阅读量脚本

实测在未登录情况下,通过刷新页面,可以达到增加阅读量的效果,所以我们的策略是,打开浏览器,不停的刷新页面,以达到增加阅读量的效果。下面是刷数量代码:

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
from selenium.common.exceptions import NoAlertPresentException
import unittest, time, re

class new_sub_count(unittest.TestCase):
 def setUp(self):
  self.driver = webdriver.Firefox()
  self.driver.implicitly_wait(30)
  self.base_url = 'https://www.jianshu.com/p/93a2895000d3' # 链接为需要刷数量的文章链接
  self.verificationErrors = []
  self.accept_next_alert = True
 
 """刷新阅读量"""
 def test_refresh_count(self):
  driver = self.driver
  driver.get(self.base_url)
  for i in range(100): # 其中数字为要刷新的数量
   time.sleep(2) # 为防止浏览器频繁刷新僵死,故设置休息时间
   driver.refresh() # 刷新
  driver.quit() # 退出浏览器

if __name__ == '__main__':
 unittest.main()

将上文的代码保存为.py格式的文件,文件编码为utf-8格式,本文将文件另存为count.py,并存储在C:\Users\Ubuntu目录下。

执行

打开命令提示符,进入存放文件的目录,执行python count.py,如下:

C:\Users\Ubuntu>python
Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06:12) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> python count.py

执行开始后,程序会调用火狐浏览器,并自动进行刷新,以达到刷阅读数量的效果。本文仅作技术交流,请正当使用~希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python 提取tuple类型值中json格式的key值方法

标题比较麻烦,都有些叙述不清;昨天下午在调试接口框架的时候,遇到了一个问题是这样的: 使用python 写了一个函数,return 了两个返回值比如 return a,b 于是返回的a,...

python构建指数平滑预测模型示例

python构建指数平滑预测模型示例

指数平滑法 其实我想说自己百度的… 只有懂的人才会找到这篇文章… 不懂的人…看了我的文章…还是不懂哈哈哈 指数平滑法相比于移动平均法,它是一种特殊的加权平均方法。简单移动平均法用的是算术...

Python实现计算最小编辑距离

Python实现计算最小编辑距离

最小编辑距离或莱文斯坦距离(Levenshtein),指由字符串A转化为字符串B的最小编辑次数。允许的编辑操作有:删除,插入,替换。具体内容可参见:维基百科—莱文斯坦距离。一般代码实现的...

PyTorch 随机数生成占用 CPU 过高的解决方法

PyTorch 随机数生成占用 CPU 过高的问题 今天在使用 pytorch 的过程中,发现 CPU 占用率过高。经过检查,发现是因为先在 CPU 中生成了随机数,然后再调用.to(d...

浅谈Python的条件判断语句if/else语句

计算机之所以能做很多自动化的任务,因为它可以自己做条件判断。 比如,输入用户的年龄,根据年龄打印不同的内容。。。 Python程序中,能让计算机自己作出判断的语句就是if语句: 例:...