Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Python 增加博客园阅读量

Python 增加博客园阅读量

作者头像
py3study
发布于 2020-01-24 01:37:39
发布于 2020-01-24 01:37:39
72900
代码可运行
举报
文章被收录于专栏:python3python3
运行总次数:0
代码可运行

一、原理

  一般来说,阅读量是通过 ip 识别的,如果一个 ip 已经请求过了,下一次就不再增加阅读量。因此,想要增加阅读量,就需要不同的 ip 进行请求。大致清楚了之后,就可以开始写代码了。

二、获取代理 ip

  国内有很多代理 ip 的网站,这里我就推荐 http://31f.cn/http-proxy/ ,我们直接通过爬虫对 ip 和端口号进行获取,用 requests 和 BeautifulSoup ,由于这个网站的结构比较简单,就直接上代码了(记得导包)。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
def getIPList(url="http://31f.cn/http-proxy/"):
    proxies = []
    headers = {
        'User_Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36',
    }

    res = requests.get(url, headers=headers)

    soup = BeautifulSoup(res.text, 'lxml')

    ip_list = soup.select("body > div > table.table.table-striped > tr > td:nth-of-type(2)")
    port_list = soup.select("body > div > table.table.table-striped > tr > td:nth-of-type(3)")

    for i in range(len(port_list)):
        proxies.append(ip_list[i].text + ":" + port_list[i].text)

    return proxies

  如果想要获取更多的 ip 可以让这个方法不带参数,直接通过循环对多个页面进行抓取,毕竟大部分代理 ip 的有效期都很短。

三、发出请求

  其实在一开始,我是直接对 https://www.cnblogs.com/lyuzt/p/10381107.html 进行请求的,但是我发现用 requests 请求这个网址并不能增加阅读量。因为其他的文件并没有像平时打开网站那样加载,而且增加阅读量应该是由另外的网址进行,所以要好好分析一下,到底是通过什么增加阅读量的。

   从控制台可以看到有一个 put 请求的,域名的开头为 count,这个才是阅读量增加的关键。所以改一下 url 再请求。

  代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
IPs = getIPList_2()
#print(IPs)
for i in range(len(IPs)):
    print("开始请求")
    user_agent = random.choice(user_agents)
    proxy = IPs[i]
    res = requests.get(blog_url, headers={'user_agent': user_agent}, proxies={'http': proxy})
    print(user_agent + '\t' + proxy, end='\t')
    print(res)
    print("请求结束,准备下一次请求......")
    time.sleep(10)

  ps:" user_agents " 这个变量是一个列表,相当于一个 user_agent 池,它的每个元素都是一个 user_agent 。这个就不展示了,可以上网复制。

四、总结

  经过测试,博客的阅读量有所增加,但由于大部分代理 ip 的有效期短,基本上只能增加一点点。有些网站可以通过直接请求网址增加阅读量,有一些网站则是通过请求其他的文件增加的,如果觉得去分析有点麻烦可以直接用 selenium 让浏览器自动请求,至于这个方法就不尝试了。

  虽然阅读量少,但我只试了一次,毕竟不能被这个数字左右,要端正心态。只要有技术,这些东西真的无所谓(不带出处转载这个就不能忍了,毕竟侵权了)。最后强调一下,这篇博客重在交流!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/05/15 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
MySQL运维11-Mycat分库分表之应用指定分片
  此规则是在运行阶段有应用自主决定路由到那个分片,根据提供的字段,然后按照指定的规则,截取该字段的部分子字符串当做分片的依据,该分别方法比较灵活,适用于某个字段有几个特殊的字符串拼接而成的这种场景,例如:一个学校的学号:小学部的学号以0开头,形式为:0xxxxx(注意因为数据节点的索引是从0开始的,所以这里截取的字符串最好也是从0开始,不然第一个数据节点将会没有值存在,后面会有演示),中学部的学号以1开头,形式为1xxxxx,高中部的学号以2开头,形式为2xxxxx等,这样就不用在单独做一个字段区分学段了,只需要判断一下学号的开头就可以实现不同学段的学生分库分表储存。
Se7eN_HOU
2023/12/20
2380
MySQL运维11-Mycat分库分表之应用指定分片
MySQL运维12-Mycat分库分表之按天分片
  指定一个时间周期,将数据写入一个数据节点中,例如:第1-10天的数据,写入到第一个数据节点中,第2-20天的数据写入到第二个节点中,第3-30天的数据节点写入到第三个数据节点中。    
Se7eN_HOU
2023/12/21
4760
MySQL运维12-Mycat分库分表之按天分片
MySQL运维8-Mycat分库分表之范围分片
  根据指定的字段及其配置的范围与数据节点的对应情况,来决定该数据属于哪一个分片。
Se7eN_HOU
2023/12/19
2630
MySQL运维8-Mycat分库分表之范围分片
MySQL运维13-Mycat分库分表之按月分片
  使用场景为按照自然月来分片,每个自然月为一个分片,但是一年有12个月,是不是要有12个数据节点才行呢?并不是。例如我现在只有三个分片数据库,这样就可以1月在第一个数据分片中,2月在第二个数据分片中,3月在第三个数据分片中,当来到4月的时候,就会重新开始分片,4月在第一个数据分片,5月在第二个数据分片,6月在第三个数据分片,以此类推。
Se7eN_HOU
2023/12/21
1.1K0
MySQL运维13-Mycat分库分表之按月分片
MySQL 分库分表
随着互联网及移动互联网的发展,应用系统的数据量也是成指数式增长,若采用单数据库进行数据存储,存在以下性能瓶颈:
用户9615083
2022/12/25
14.9K0
MySQL 分库分表
MySQL运维10-Mycat分库分表之一致性哈希分片
  一致性哈希分片的实现思路和我们之前介绍的水平分表中的取模分片是类似的。只不过取模分片,采用的是利用主键和分片数进行取模运算,然后根据取模后的结果,将数据写入到不同的分片数据中。但是这种分片方式有一个局限性就只能对id是整形的数据使用,如果id是个uuid类型这个的非整形的字段,就没有办法使用取模的方式进行分片了。这时候就可以采用一致性hash算法分片,其分片的原则是根据id 哈希运算之后,然后再决定写入到哪个分片,所以我认为一致性哈希的分表方式是对取模分片的补充。
Se7eN_HOU
2023/12/20
4950
MySQL运维10-Mycat分库分表之一致性哈希分片
mycat分片规则详解+实例演示
MyCat的分片规则配置在conf目录下的rule.xml文件中定义 ;
别团等shy哥发育
2023/02/25
1.5K0
mycat分片规则详解+实例演示
MySQL数据库实践学习(十八)
通过在配置文件中配置可能的枚举值, 指定数据分布到不同数据节点上, 本规则适用于按照省份、性别、状态拆分数据等业务 。
用户1289394
2022/10/26
1810
MySQL数据库实践学习(十八)
数据库分库分表,分片配置轻松入门!
当我们把 MyCat + MySQL 的架构搭建完成之后,接下来面临的一个问题就是,数据库的分片规则:有那么多 MySQL ,一条记录通过 MyCat 到底要插入到哪个 MySQL 中?这就是我们今天要讨论的问题。
江南一点雨
2019/07/10
5700
Mysql之Mycat读写分离及分库分表
​ Mycat的原理中最重要的一个动词是“拦截”,它拦截了用户发送过来的SQL语句,首先对SQL语句做了一些特定的分析:如分片分析、路由分析、读写分离分析、缓存分析等, 然后将此SQL发往后端的真实数据库,并将返回的结果做适当的处理,最终再返回给用户。 如下图: ​ 上述图片里,Orders表被分为三个分片datanode(简称dn),这三个分片是分布在两台MySQL Server上(DataHost),即datanode=database@datahost方式, 因此你可以用一台到N台服务器来分片,分片规则为(sharding rule)典型的字符串枚举分片规则,一个规则的定义是分片字段(sharding column)+分片函数(rule function), ​ 这里的分片字段为prov而分片函数为字符串枚举方式。 ​ 当Mycat收到一个SQL时,会先解析这个SQL,查找涉及到的表,然后看此表的定义,如果有分片规则,则获取到SQL里分片字段的值,并匹配分片函数,得到该SQL对应的分片列表,
iginkgo18
2021/04/26
1K0
Mysql之Mycat读写分离及分库分表
MySQL运维7-Mycat水平分表
  在业务系统中,有一张日志表,业务系统每天都会产生大量的日志数据,单台服务器的数据存储即处理能力是有限的,可以对数据库表进行拆分,这时候就可以使用水平分表的策略
Se7eN_HOU
2023/12/18
5100
MySQL运维7-Mycat水平分表
Mycat分库分表全解析 Part 5 Mycat 分片规则介绍
上面一节我们讲到分片规则依赖于算法,Mycat提供一些常用的算法,基本满足我们的需求,这里介绍几个,全部的请查看官方文档的10.5章节
bsbforever
2020/08/18
1.3K0
Mycat分库分表全解析 Part 5 Mycat 分片规则介绍
MyCat:第八章:MyCAT In Action中文版
MyCAT的目标是:低成本的将现有的单机数据库和应用平滑迁移到“云”端,解决数据存储和业务规模迅速增长情况下的数据瓶颈问题。
Java廖志伟
2022/09/28
8280
MyCat:第八章:MyCAT  In Action中文版
MyCat教程【安装及配置介绍】
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
用户4919348
2019/10/17
3.2K0
MyCat教程【分库分表】
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
用户4919348
2019/10/17
2.3K0
Mycat分库分表的简单实践
MySQL的使用场景中,读写分离只是方案中的一部分,想要扩展,势必会用到分库分表,可喜的是Mycat里已经做到了,今天花时间测试了一下,感觉还不错。 关于分库分表 当然自己也理了一下,分库分表
jeanron100
2018/03/21
1.4K0
Mycat分库分表的简单实践
Demo入门Mycat【面试+工作】
Mycat是一个开源的分布式数据库系统,是一个实现了MySQL协议的的Server,前端用户可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问,而其后端可以用MySQL原生(Native)协议与多个MySQL服务器通信,也可以用JDBC协议与大多数主流数据库服务器通信,其核心功能是分表分库,即将一个大表水平分割为N个小表,存储在后端MySQL服务器里或者其他数据库里;
Java帮帮
2018/12/05
1.2K0
我自己实际操作安装MyCat水平分割之分片枚举和取模算法(二)
水平分割之分片枚举实战操作 根据地区进行分库:湖北数据库、江苏数据库 山东数据库 分表对应db0;db1;db2 在这三个库里面分表创建相同的表t_order表
全栈程序员站长
2022/06/30
2620
Mycat 读写分离 数据库分库分表 中间件 安装部署,及简单使用
MyCat是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器,前端用户可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问,而其后端可以用MySQL原生协议与多个MySQL服务器通信,也可以用JDBC协议与大多数主流数据库服务器通信,其核心功能是分表分库,即将一个大表水平分割为N个小表,存储在后端MySQL服务器里或者其他数据库里。
程序员鹏磊
2018/01/16
2.1K0
Mycat 读写分离 数据库分库分表 中间件 安装部署,及简单使用
数据库中间MyCat硬核教程,主从复制,分库分表
如今随着互联网的发展,数据的量级也是成指数的增长,从 GB 到 TB 到 PB。对数据的各种操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求。这个时候 NoSQL 的出现暂时解决了这一危机。它通过降低数据的安全性,减少对事务的支持,减少对复杂查询的支持,来获取性能上的提升。
小熊学Java
2023/10/23
2.6K0
数据库中间MyCat硬核教程,主从复制,分库分表
推荐阅读
相关推荐
MySQL运维11-Mycat分库分表之应用指定分片
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验