Python 获取微信读书免费机会!

Python实现微信读书辅助工具 [TOC]##项目来源这个有意思的项目是我从GitHub上找来的,起因是在不久前微信读书突然就设置了非会员书架数目上限,我总想做点什么来表达我的不满,想到可否用爬虫来获取某一本书的内容, 但是我技术有限,我使用F12进行检查,发现微信读书的网页版中的内容居然是canvas元素结合js绘制出来的图像? 很多人学习python,不知道从何学起。 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。 很多已经做案例的人,却不知道如何去学习更加高深的知识。 那么针对这三类人,我给大家提供一个好的 阅读详情

640

微信读书 App 的体验不错,也有很多的福利。但是如果你想完全免费阅读的话,就只能有书币兑换和赠一得一这两种途径了。本文介绍了自动化阅读获取书币的一个方案,有时间有兴趣的朋友可以尝试。

但是,这种方案的投产比还是很低的。基本都要挂 2周以上才能兑换一本自己喜欢的书。

文 | 萧文翰 出处 |     前端开发实用技巧公众号

用过“微信读书”的朋友都知道,如果我们想阅读全本的付费书籍,除了购买整本(使用书币)外,还可以使用无限卡。可无论是购买全书还是无限卡,归根结底都是要花银子的。

除此之外,还有一种方式——用阅读时长兑换书币。

根据目前微信读书的兑换策略,阅读半个小时,即可兑换1枚赠币,每周最多可兑换10枚赠币。因此,理论上每周我们可以使用5个小时的时间,获得最多10元等价书币。

本篇文章博主就教大家一种方法,通过模拟书籍的手动翻页,快速免费获得书币的方法,该方法仅适用于Android平台。

首先要配置好Android SDK环境变量和Python环境,最关键的是可以正常使用adb命令。这一步就不再赘述了,这里简要说明一下模拟翻页的原理,注意看下面一行命令:

adb shell input swipe 1000 600 200 600

这一行指令包含两部分操作:

  1. adb shell:进入设备的Shell命令行;

  2. input swipe 1000 600 200 600:模拟屏幕滑动,从x=1000,y=600坐标处滑动到x=200,y=600坐标处。即从右向左滑屏,也就是翻页的触摸操作;

好了,理解了这行命令后,剩下的事情就好办多了。我们只需要间隔一段时间,循环执行这句话即可。即将下面两行命令放在循环中,循环的次数由书籍的未读页数决定。

time.sleep(random.uniform(rv_t1,rv_t2))	
run('adb shell input swipe 1000 600 200 600', shell=True)

为了尽量模拟人类阅读的真实性,这里的时间间隔是给定时间范围内的随机值。

最后,为了更方便地使用这个脚本,除了正序(即从右向左滑屏)外,还增加了倒序(即从左向右滑屏)和无尽模式(即正序结束后自动倒序,倒序结束后自动正序,循环往复)。

完整的Python脚本如下:

# encoding:utf-8	
from subprocess import run	
import time	
import random	
import os	
def book(rv_sel, rv_page_num, rv_t1, rv_t2):	
    rv_sel = int(rv_sel)	
    if rv_sel == 1:	
        print('程序运行中')	
        for i in range(rv_page_num):	
            time.sleep(random.uniform(rv_t1,rv_t2))	
            run('adb shell input swipe 1000 600 200 600', shell=True)	
            n = i + 1	
            print('总计需翻阅 %d 页,已翻阅 %d 页,剩余 %d 页' % (rv_page_num, n, rv_page_num - n))	
        exit()	
    elif rv_sel == 2:	
        print('程序运行中')	
        for i in range(rv_page_num):	
            time.sleep(random.uniform(rv_t1,rv_t2))	
            run('adb shell input swipe 200 600 1000 600', shell=True)	
            n = i + 1	
            print('总计需翻阅 %d 页,已翻阅 %d 页,剩余 %d 页' % (rv_page_num, n, rv_page_num - n))	
        exit()	
    else:	
        print()	
        print('* ' * 8, '1.正循环-倒循环,无限循环', '* ' * 8)	
        print('* ' * 8, '2.倒循环-正循环,无限循环', '* ' * 8)	
        print()	
        loop = int(input('请选择循环方式:'))	
        print('程序运行中')	
        if loop == 1:	
            while 1:	
                for i in range(rv_page_num):	
                    time.sleep(random.uniform(rv_t1,rv_t2))	
                    run('adb shell input swipe 1000 600 200 600', shell=True)	
                    n = i + 1	
                    print('总计需翻阅 %d 页,已翻阅 %d 页,剩余 %d 页' % (rv_page_num, n, rv_page_num - n))	
                for i in range(rv_page_num):	
                    time.sleep(random.uniform(rv_t1,rv_t2))	
                    run('adb shell input swipe 200 600 1000 600', shell=True)	
                    n = i + 1	
                    print('总计需翻阅 %d 页,已翻阅 %d 页,剩余 %d 页' % (rv_page_num, n, rv_page_num - n))	
        else:	
            while 1:	
                for i in range(rv_page_num):	
                    time.sleep(random.uniform(rv_t1,rv_t2))	
                    run('adb shell input swipe 200 600 1000 600', shell=True)	
                    n = i + 1	
                    print('总计需翻阅 %d 页,已翻阅 %d 页,剩余 %d 页' % (rv_page_num, n, rv_page_num - n))	
                for i in range(rv_page_num):	
                    time.sleep(random.uniform(rv_t1,rv_t2))	
                    run('adb shell input swipe 1000 600 200 600', shell=True)	
                    n = i + 1	
                    print('总计需翻阅 %d 页,已翻阅 %d 页,剩余 %d 页' % (rv_page_num, n, rv_page_num - n))	
def rand_time(rv_xh):	
    if int(rv_xh) == 1:	
        return 10,20	
    else:	
        while 1:	
            t1 = int(input('请输入最小等待时间:'))	
            t2 = int(input('请输入最大等待时间:'))	
            if t2 >= t1:	
                return t1,t2	
                break	
            else:	
                print('最小时间不得小于最大时间,请重新输入')	
print('* ' * 50,)	
print('请选择翻页间隔时间:')	
print('1.预设(10秒 - 20秒之间):')	
print('2.自定义(大于0):',)	
print('* ' * 50,)	
while 1:	
    xh = input('请输入序号:')	
    if xh == '':	
        print('输入有误,请重新输入')	
    elif xh in str([1,2]):	
        t1,t2 = rand_time(xh)	
        break	
    else:	
        print('输入有误,请重新输入')	
while 1:	
    print()	
    print('* ' * 8, '1.正序', '* ' * 8)	
    print('* ' * 8, '2.倒序', '* ' * 8)	
    print('* ' * 8, '3.无尽', '* ' * 8)	
    print()	
    sel = input('请选择翻书方式:')	
    if sel in str([1,2,3]):	
        page_num = int(input('请输入书籍总页数:'))	
        book(sel,page_num,t1,t2)	
    elif sel == '':	
        print('输入错误')	
    else:	
        print('输入错误')

下面开始连接真机,然后启动App,随便打开一本书,最后打开命令行,运行这个Python脚本吧!提醒一下:不要忘了去兑换书币,否则这些努力就白费了。

最后,请广大读者在经济允许的情况下购买正版书籍,支持作者和出版社。

回复下方「关键词」,获取优质资源

回复关键词「 pybook03」,立即获取主页君与小伙伴一起翻译的《Think Python 2e》电子版

回复关键词「入门资料」,立即获取主页君整理的 10 本 Python 入门书的电子版

回复关键词「m」,立即获取Python精选优质文章合集

回复关键词「book 数字」,将数字替换成 0 及以上数字,有惊喜好礼哦~

推荐阅读

题图:pexels,CC0 授权。

640?wx_fmt=jpeg

【微信读书每日一答辅助小程序】使用python对每日一答问题进行识别,并将结果保存到剪贴板以便搜索。 目录标题1 环境准备2 获取屏幕位置3 指定区域屏幕截图4 文字识别5 按键识别并保存到剪贴板   在腾讯收购阅文之后,微信读书的无限卡已经不能免费看书了,这时白嫖微信读书每日一答的书币成了不错的选择。严重偏科又手速垃圾的我在等级升高下逐渐力不从心,于是突然有了这个想法,写个能快速识别问题文字的小程序,因为现有的识别文字等程序(如QQ)会出现识别速度慢、手动框选识别区域的问题。 1 环境准备 系统:WIN10 python version:3.6 所需要的库:pyautogui,keyboard,PILL 阅读详情

相关推荐

微信阅读小程序源码 微信阅读小程序代码(高分毕设项目源码)

1. 微信阅读小程序代码说明:经导师指导并认可通过的98分毕设项目代码。 2.适用对象:本代码学习资料适用于计算机、电子信息工程、数学等专业正在做毕设的学生,需要项目实战练习的学习者,也适用于课程设计、期末大作业。 3.技术栈:java,项目代码都经过严格调试,代码没有任何bug! 4. 作者介绍:大厂码农,java领域创作者,阿里云开发社区乘风者计划专家博主,专注于大学生项目实战开发,文章底部有博主联系方式,更多优质系统、项目定制请私信。 5. 最新计算机软件毕业设计选题大全: https://blog.youkuaiyun.com/weixin_45630258/article/details/135901374

打python&adb组合拳,实现微信读书永久免费读

用过“微信读书”的朋友都知道,如果我们想阅读全本的付费书籍,除了购买整本(使用书币)外,还可以使用无限卡。可无论是购买全书还是无限卡,归根结底都是要花银子的。 除此之外,还有一种方式——用阅读时长兑换书币。根据目前微信读书的兑换策略,阅读半个小时,即可兑换1枚赠币,每周最多可兑换10枚赠币。因此,理论上每周我们可以使用5个小时的时间,获得最多10元等价书币。 本篇文章博主就教大家一种方法,通过模拟...

编程二三事 2485

一键导出微信读书的书籍和笔记-爬虫python代码

如何运行 # 跳转到当前目录 cd 目录名 # 先卸载依赖库 pip uninstall -y -r requirement.txt # 再重新安装依赖库 pip install -r requirement.txt -i https://pypi.tuna.tsinghua.edu.cn/simple # 开始运行 python pyqt_gui.py ——学习参考资料:仅用于个人学习使用! 本代码仅作学习交流,切勿用于商业用途,否则后果自负。若涉及侵权,请联系,会尽快处理! 未进行详尽测试,请自行调试!

【微信读书】数据内容接口逆向调试02

本人充值了会员但是看完做完笔记每次还得去翻很不方便,于是想把书籍内容弄下来,方便做笔记学习,本文只做学习交流,不做任何商用,不会披露关键细节代码。然后第一遍先一直往下走看看整个逻辑,一直走一直走,大概的逻辑就是取了很多环境,然后不停的在大数据里取方法的真实的名字,然后走到这里,看起来就是组装参数的部分了。往上走 看上面的8.22xxx.js 这个 堆栈 ,我们看还是已经存在的了,而且这个是this,那么如果这样我们就要看一下这个控制流了。打印一下上面的方法名,服务器时间,这玩意会不会是返回的呢。

paycho的博客 3786

STM32 CubeMX实战:手把手教你用I2C驱动IST8310磁力计(附完整代码)

本文详细介绍了如何使用STM32 CubeMX和I2C驱动IST8310磁力计,从硬件连接到代码实现的完整流程。重点讲解了I2C通信异常处理、传感器初始化序列优化以及中断驱动数据采集方案,帮助开发者快速搭建可靠的地磁场数据采集系统。

weixin_42531163的博客 190

使用Docker搭建MaxKB智能体平台

【代码】使用Docker搭建MaxKB智能体平台。

janthinasnail的博客 711

自己动手写油猴脚本 - 简单优化微信读书网页版阅读体验

1. 微信读书网页版的问题: 内容居中未充满整个body(强迫症),右侧的下滑滚动条影响全屏时候的阅读体验。 2. 解决方法 使用油猴脚本(没有Tampermonkey,请自行百度安装)来修改网页源码,使文字内容充满整个 body,隐藏右侧的滚动条且能保持滚动。 使文字充满整个body只需修改文字所在div的width为100%,让右侧菜单浮动到最右侧,需设置菜单所在div的left值为inherit,并设置right为0,因为菜单布局为fixed。 3. 脚本源码 // ==UserScript

sunshine2285的博客 5701

UG\NX二次开发 找不到指定的dlx文件(Specified Dlx file not found)

有群友问:用Ctrl+U运行的时候就报错,找不到指定的dlx文件Specified Dlx file not found。怎么处理。

王牌飞行员_里海的博客 1131

【脚本】网页端微信读书书架中书籍详细信息

该脚本功能爬取网页端微信读书书架中的所有书籍详细信息 首先进入书架中的一个分组 然后在控制台输入如下代码 // 书架中的书籍链接 let shelf_arr = []; // 存储链接 let shelf_book = document.getElementsByClassName("shelfBook"); // 书籍 for (i = 0; i < shelf_book.length; i++) { shelf_arr.push(shelf_book[i].href.replace("rea

qq_45196785的博客 2111

AgentScope 实战训练营-A2UI的完整实现:从概念到部署全流程

本文详细介绍了如何在AgentScope框架中实现Google的A2UI(Agent-to-Agent UI)协议,构建一个能生成可交互UI的智能体应用。文章涵盖了从环境准备、架构设计、核心代码实现到测试部署的完整流程,包括A2UI协议解析、技能系统、客户端实现、通信机制等核心技术点,适合AI Agent和前端开发人员学习参考。

program哲学 206

GEE:连续变化检测 CCDC 提取断点信息(干扰时间、干扰幅度、干扰次数)

本文将介绍在 Google Earth Engine (GEE) 平台上连续变化检测与分类(Continuous Change Detection and Classification, CCDC)提取扰动时间、干扰幅度、干扰次数信息,并下载到本地的代码。

养乐多的博客 1946

微信读书刷时长助你成为霸榜“大佬” v2版本

微信读书、刷时长、挑战赛

akal4wudu的博客 4800

QGis二次开发 —— 2、第一个程序 - 加载栅格tif与矢量shp文件(附源码)

QGis二次开发 —— 2、第一个程序 - 加载栅格tif与矢量shp文件(附源码)

1100

用Python白嫖微信读书,你想学吗?

大家好,我是小五???? 这是Python改变生活系列的第5篇,主要跟大家介绍一下,我是如何用Python爬取小说,再导入微信读书的。 成功实现在【微信读书】中各种“白票”付费小说! 前情提要 不知道用微信读书的朋友多不多,这里顺便安利一下哈。 我目前看电子书的话基本都是在用微信读书,毕竟白嫖的无限卡真香。 在微信读书上,不仅很多正版的Python书籍电子书可以直接看,还可以在阅读的同时看别人写的标注。 但是无限卡对于小说不太友好,只能阅读开头的章节,后面的章节就需要变相付费了。 虽然知道番茄小说,七猫

zhuxiao5的博客 4269

GEE:随机森林分类教程(样本制作、特征添加、训练、精度、参数优化、贡献度、统计面积)

本文将介绍在Google Earth Engine (GEE)平台上进行随机森林分类的方法和代码,其中包括制作样本点教程(本地、在线和本地在线混合制作样本点,合并样本点等),加入特征变量,运行随机森林分类器教程,计算随机森林分类结果的精度,优化随机森林分类算法的参数,打印各个变量特征的贡献度等步骤的方法和代码。本教程可以应用于多种分类场景,包括土地利用分类、种植区提取(大蒜、小麦、玉米等)、局部气候区分类、植被分类等多种场景。

养乐多的博客 1万+

华为OD面试手撕真题 【合并相邻且相等的元素】多语言题解

华为OD面试高频手撕真题【合并相邻且相等的元素】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解。

qq_45776114的博客 551

微信读书笔记助手 wereader 安装和配置指南

### 项目基础介绍 `wereader` 是一个功能全面的微信读书笔记助手,旨在帮助用户更方便地管理和整理在微信读书平台上的笔记。该项目提供了一个带有GUI的客户端,用户可以通过该客户端进行扫码登录,并自动获取微信读书的cookie,从而实现笔记的获取和管理。 ### 主要编程语言 该项目主要使用 **Python** 语言进行开发。 ## 2. 项目使用的关键技术和框架 ### 关键技术

gitblog_07994的博客 919

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

终极指南:如何用Python自动化工具将微信读书笔记同步到Notion知识库

你是否曾在微信读书中积累了数百条有价值的划线和笔记,却苦于无法系统化管理这些阅读收获?每次想要回顾某个知识点时,都需要在App中翻找半天,宝贵的阅读思考就这样散落在数字世界的角落。今天,我要分享一个能彻底改变你知识管理方式的自动化解决方案——通过Python脚本将微信读书笔记自动同步到Notion,打造属于你的个人数字图书馆。 ## 从碎片化阅读到系统化知识管理的转变 现代人的阅读习惯已经发生

gitblog_00067的博客 1055

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

如何用Python自动化工具将微信读书笔记同步到Notion知识库?

你是否曾在微信读书中积累了数百条有价值的划线和笔记,却苦于无法系统化管理这些阅读收获?今天,我要分享一个能彻底改变你知识管理方式的自动化解决方案——通过Python脚本将微信读书笔记自动同步到Notion,打造属于你的个人数字图书馆。 ## 📚 从碎片化阅读到系统化知识管理的转变 现代人的阅读习惯已经发生了深刻变化。我们不再只是被动接受信息,而是通过划线、写笔记的方式与内容深度互动。微信读书

gitblog_01091的博客 778

微信读书十块钱一个月?分分钟搞定它!“白嫖”才是最香的!

再看一下章节目录,也是按照正常的目录进行排版的。 非常完美! 小结 以上,就是我使用Python爬取小说,再导入微信读书,成功白嫖小说阅读的全部步骤了。 这个方法已经用了几个月,白嫖了好几本小说。 赶紧把小技巧分享给大家,快上车吧! ...

爬遍所有网站 2867

如何用Python自动化工具将微信读书笔记同步到Notion知识库?终极完整指南

你是否曾在微信读书中积累了数百条有价值的划线和笔记,却苦于无法系统化管理这些阅读收获?每次想要回顾某个知识点时,都需要在App中翻找半天,宝贵的阅读思考就这样散落在数字世界的角落。今天,我要分享一个能彻底改变你知识管理方式的自动化解决方案——通过Python脚本将微信读书笔记自动同步到Notion,打造属于你的个人数字图书馆。 ## 📊 从碎片化阅读到系统化知识管理的转变 现代人的阅读习惯已

gitblog_00885的博客 505

wereader:解放你的微信读书笔记!一站式导出与管理神器完全指南

你是否还在为微信读书笔记难以导出和管理而烦恼?wereader作为一款功能全面的微信读书笔记助手,能够帮助你轻松解决这一问题,让你的读书笔记管理变得高效而简单。 ## 🌟 认识wereader:你的微信读书笔记好帮手 wereader是一款专为微信读书用户打造的读书笔记助手,它不仅可以作为微信读书的桌面客户端,更能帮助你便捷地管理和导出读书笔记。通过内嵌浏览器实现扫码登录,自动获取cooki

gitblog_00276的博客 606

微信读书笔记越攒越乱?免费开源助手 wereader 的阅读管理完整指南

你一年在微信读书上划过多少条线?只要读书还算勤快,这个数字通常奔着四位数去——划线、想法、笔记散落在几十本书里,真到想找某一句时,却连"那句话在哪个书"都记不起来。这篇文章要介绍的免费开源项目 **wereader(微信读书笔记助手)**,专门解决"读完了,笔记却找不回来"这个老问题。它要做的,是把散落在书里的划线和想法,变成一份份随时可检索、可导出的 Markdown 文档,帮你把微信读书真正变

gitblog_00915的博客 271

微信读书笔记助手 wereader 项目推荐

**主要编程语言**: Python **项目简介**: wereader 是一个功能全面的微信读书笔记助手,旨在帮助用户更高效地管理和整理在微信读书平台上的笔记。该项目使用 Python 语言开发,提供了一个带有 GUI 的客户端,用户可以通过该客户端进行扫码登录,并自动获取微信读书的 cookie,从而实现对笔记的便捷管理。 ## 2. 项目的核心功能 - **获取书架上的书籍列表*

gitblog_07995的博客 659
上一篇: 已拿30K offer!感谢这几个公众号提供的各种学习教程
下一篇: 为什么我的 Python 程序卡住啦!
codingpy
博客等级 码龄11年 1873粉丝 104原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值