diff --git a/12.一键导出微信读书的书籍和笔记/README.MD b/12.一键导出微信读书的书籍和笔记/README.MD index bef14e2..bdf6af4 100644 --- a/12.一键导出微信读书的书籍和笔记/README.MD +++ b/12.一键导出微信读书的书籍和笔记/README.MD @@ -1,13 +1,17 @@ -## 一键导出微信读书的书籍和笔记 +# 一键导出微信读书的书籍和笔记 -### 简介 +> 本项目基于[@arry-lee](https://github.com/arry-lee)的项目[wereader](https://github.com/arry-lee/wereader/issues/20)修改而来,感谢原作者提供的源代码。 + +
+ +## 简介 全民阅读的时代已经来临,目前使用读书软件的用户数2.1亿,日活跃用户超过500万,其中19-35岁年轻用户占比超过60%,本科及以上学历用户占比高达80%,北上广深及其他省会城市/直辖市用户占比超过80%。**本人习惯使用微信读书,为了方便整理书籍和导出笔记,便开发了这个小工具。**

-### 部分截图 +## 部分截图 ![](demo1.png)
![](demo2.png) @@ -17,9 +21,9 @@

-### 代码思路 +## 代码思路 -#### 1. 目录结构 +### 1. 目录结构 首先,我们先看一下整体目录结构 ```bash @@ -40,7 +44,7 @@ Code
-#### 2. excel_func.py +### 2. excel_func.py ```python def write_excel_xls(path, sheet_name_list, value): @@ -75,7 +79,7 @@ def write_excel_xls(path, sheet_name_list, value):
-#### 3. pyqt_gui.py +### 3. pyqt_gui.py ```python class MainWindow(QMainWindow): @@ -201,7 +205,7 @@ class MainWindow(QMainWindow):
-#### 4. wereader.py +### 4. wereader.py ```python def get_bookshelf(userVid, headers): @@ -287,7 +291,7 @@ def get_bookmarklist(bookId, headers):

-### 如何运行 +## 如何运行 ```bash # 跳转到当前目录 @@ -303,7 +307,7 @@ python pyqt_gui.py

-### 补充 +## 补充 完整版源代码存放在[github][5]上,有需要的可以下载 @@ -312,7 +316,7 @@ python pyqt_gui.py

-### License +## License [The MIT License (MIT)][6] [5]:https://github.com/shengqiangzhang/examples-of-web-crawlers diff --git a/12.一键导出微信读书的书籍和笔记/pyqt_gui.py b/12.一键导出微信读书的书籍和笔记/pyqt_gui.py index 605d29d..e80d0e0 100644 --- a/12.一键导出微信读书的书籍和笔记/pyqt_gui.py +++ b/12.一键导出微信读书的书籍和笔记/pyqt_gui.py @@ -52,9 +52,10 @@ class MainWindow(QMainWindow): url = 'https://weread.qq.com/#login' # 目标地址 self.browser = QWebEngineView() # 实例化浏览器对象 - QWebEngineProfile.defaultProfile().cookieStore().deleteAllCookies() # 初次运行软件时删除所有cookies + self.profile = QWebEngineProfile.defaultProfile() + self.profile.cookieStore().deleteAllCookies() # 初次运行软件时删除所有cookies + self.profile.cookieStore().cookieAdded.connect(self.onCookieAdd) # cookies增加时触发self.onCookieAdd()函数 - QWebEngineProfile.defaultProfile().cookieStore().cookieAdded.connect(self.onCookieAdd) # cookies增加时触发self.onCookieAdd()函数 self.browser.loadFinished.connect(self.onLoadFinished) # 网页加载完毕时触发self.onLoadFinished()函数 self.browser.load(QUrl(url)) # 加载网页 @@ -85,6 +86,9 @@ class MainWindow(QMainWindow): USER_VID = self.DomainCookies['wr_vid'] print('用户id:{}'.format(USER_VID)) + # 注入javascript脚本,与网页交互 + self.browser.page().runJavaScript('alert("登录成功!")') + # 关闭整个qt窗口 self.close() @@ -117,7 +121,7 @@ class MainWindow(QMainWindow): # 关闭软件软件之前删除所有cookies # 此代码不可删除,否则下次打开软件会自动加载浏览器中旧的cookies - QWebEngineProfile.defaultProfile().cookieStore().deleteAllCookies() + self.profile.cookieStore().deleteAllCookies() diff --git a/README.MD b/README.MD index c20a037..1b72c5b 100644 --- a/README.MD +++ b/README.MD @@ -25,11 +25,11 @@ ## 如何下载 -本仓库大小为, 为提高下载速度, 建议使用代理服务器下载。 +本仓库总大小为, 为提高下载速度, **建议使用代理下载**。
-没有或不懂如何设置代理服务器的![chinese_flag](./chinese_flag.png)**中国用户**, 请跳转至本仓库同步镜像[码云Gitee](https://gitee.com/shengqiangzhang/examples-of-web-crawlers)进行下载, 以便获得较快的下载速度。 +没有或不懂如何设置代理的![chinese_flag](./chinese_flag.png)**中国用户**, 请跳转至本仓库同步镜像[码云Gitee](https://gitee.com/shengqiangzhang/examples-of-web-crawlers)进行下载, 以便获得较快的下载速度。 @@ -518,6 +518,9 @@ python app.py ## [12.一键导出微信读书的书籍和笔记][weread] +> 本项目基于[@arry-lee](https://github.com/arry-lee)的项目[wereader](https://github.com/arry-lee/wereader/issues/20)修改而来,感谢原作者提供的源代码。 + +
### 简介 @@ -605,7 +608,3 @@ python pyqt_gui.py [7]:https://raw.githubusercontent.com/shengqiangzhang/examples-of-web-crawlers/master/3.%E6%B7%98%E5%AE%9D%E5%B7%B2%E4%B9%B0%E5%88%B0%E7%9A%84%E5%AE%9D%E8%B4%9D%E6%95%B0%E6%8D%AE%E7%88%AC%E8%99%AB(%E5%B7%B2%E6%A8%A1%E6%8B%9F%E7%99%BB%E5%BD%95)/example.gif [8]:http://paper.meiyuan.in/ [9]:http://chromedriver.storage.googleapis.com/index.html - - - -[wereader]: \ No newline at end of file