金股微投(600435股票)
优质文章,间送达!
原油外盘期货?原油外盘期货
作者:云外孤鸟
002135东南网架,002135东南网架
出处:cnblogs/cloudbird/p/12683546.html
广晟有色股票,广晟有色股票
全民阅览的代现已降临,现在运用读书的用户数2.1亿,日活泼用户超越500万,其19-35岁年青用户占比超越60%,本科及以上学历用户占比高达80%,北上广深及其他省会城市/直辖市用户占比超越80%。
900015?900015
自己习气运用读书,为了便利收拾书本和导出笔记,便发了这个小东西。
部截图代思路1. 目录结构首要,咱们先看一下整目录结构
├─ excel_func.py 读写excel文件
├─ pyqt_gui.py PyQt GUI界面
└─ wereader.py 读书相关api
excel_func.py运用xlrd和xlwt库对excel文件进行读写操作
pyqt_gui.py运用PyQt制作GUI界面
wereader.py经过抓包解析取得相关api
2. excel_func.pydef write_excel_xls:
# 新建一个作业簿
workbook = xlwt.Workbook
# 获取需求写入数据的行数
index = len
for sheet_name in sheet_name_list:
# 在作业簿新建一个表格
sheet = workbook.add_sheet
# 往这个作业簿的表格写入数据
for i in range:
for j in range):
sheet.write
# 保存作业簿
workbook.save
该函数的代流程为:
创立excel文件
创立表格
往表格写入数据
3. pyqt_gui.pyclass MainWindow:
def __init__:
super.__init__
self.DomainCookies = {}
self.setWindowTitle # 设置窗口标题
self.resize # 设置窗口
self.setWindowFlags # 制止化按钮
self.setFixedSize # 制止调整窗口
url = 'weread./#login' # 方针地址
self.browser = QWebEngineView # 实例化浏览器目标
QWebEngineProfile.defaultProfile.cookieStore.deleteAllCookies # 初度运转删去一切cookies
QWebEngineProfile.defaultProfile.cookieStore.cookieAdded.connect # cookies增加触发self.onCookieAdd函数
self.browser.loadFinished.connect # 页加载结束触发self.onLoadFinished函数
self.browser.load) # 加载页
self.setCentralWidget # 设置心窗口
该函数的代流程为:
新建QT窗口
实例化QWebEngineView目标
绑定self.onCookieAdd事情
绑定self.onLoadFinished事情
加载页
# 页加载结束事情
def onLoadFinished:
global USER_VID
global HEADERS
# 获取cookies
cookies = ['{}={};'.format for key,value in self.DomainCookies.items]
cookies = ' '.join
# 增加Cookie到header
HEADERS.update
# 判别是否成功读书
if login_success:
# 获取用户user_vid
if 'wr_vid' in self.DomainCookies.keys:
USER_VID = self.DomainCookies['wr_vid']
print)
# 封闭整个qt窗口
self.close
else:
该函数的代流程为:
当页加载结束,检测是否成功读书
假如成功读书,则封闭QT窗口,始进行数据导出
假如失利读书,则持续等候用户扫描二维
# 增加cookies事情
def onCookieAdd:
if 'weread.' in cookie.domain:
name = cookie.name.data.decode
value = cookie.value.data.decode
if name not in self.DomainCookies:
self.DomainCookies.update
该函数的代流程为:
保存读书的cookies,以便后续操作
books = get_bookshelf # 获取书架上的书本
books_finish_read = books['finishReadBooks']
books_recent_read = books['recentBooks']
books_all = books['allBooks']
write_excel_xls_end # 加写入excel文件
write_excel_xls_end # 加写入excel文件
write_excel_xls_end # 加写入excel文件
# 获取书架上的每本书本的笔记
for index, book in enumerate:
book_id = book[0]
book_name = book[1]
notes = get_bookmarklist
with open as f:
f.write
print'.format))
该函数的代流程为:
调用write_excel_xls_end函数,保存书本,而且导出笔记
4. wereader.pydef get_bookshelf:
"""获取书架上一切书"""
url = "i.weread./shelf/friendCommon"
params = dict
r = requests.get
if r.ok:
data = r.json
else:
raise Exception
books_finish_read = set # 已读完的书本
books_recent_read = set # 最近阅览的书本
books_all = set # 书架上的一切书本
for book in data['recentBooks']:
if not book['bookId'].isdigit: # 过滤大众
continue
b = Book
books_recent_read.add
books_all = books_finish_read + books_recent_read
return dict
该函数的代流程为:
获取最近阅览的书本、现已读完的书本、一切书本
过滤大众部
将书本数据保存为字典格局
def get_bookmarklist:
"""获取某本书的笔记回来md文本"""
url = "i.weread./book/bookmarklist"
params = dict
r = requests.get
if r.ok:
data = r.json
# clipboard.copy)
else:
raise Exception
chapters = {c['chapterUid']: c['title'] for c in data['chapters']}
contents = defaultdict
for item in sorted:
# for item in data['updated']:
chapter = item['chapterUid']
text = item['markText']
create_time = item["createTime"]
start = int[0])
contents[chapter].end)
chapters_map = {title: level for level, title in get_chapters, headers)}
res = ''
for c in sorted:
title = chapters[c]
res += '#' * chapters_map[title] + ' ' + title + '\n'
for start, text in sorted:
res += '> ' + text.strip + '\n\n'
res += '\n'
return res
该函数的代流程为:
获取某一本书本的笔记
将回来的字符串改写成markdown格局并出
怎么运转# 跳转到当时目录
cd 目录名
# 先卸载依靠库
pip uninstall -y -r requirement.txt
# 再重新安装依靠库
pip install -r requirement.txt -i pypi.tuna.tsinghua.edu/simple
# 始运转
python pyqt_gui.py
弥补
完整版源代存放在github上,有需求的请点击这儿
PyCharm 2020.1 稳定版发布
pip install 本年将呈现严重改变!
入坑 Python 后强烈推荐的一套东西库
实战:Flask + Vue 成美丽的词云
Github 抢手,程序员想拿高薪主张都看看
回复下方「关键词」,获取优质资源
回复关键词「 pybook03」,当即获取主页君与小伙伴一同翻译的《Think Python 2e》电子版
回复关键词「入门材料」,当即获取主页君收拾的 10 本 Python 入门书的电子版
回复关键词「m」,当即获取Python精优质文章集
回复关键词「」,将数字替换成 0 及以上数字,有惊喜爱礼哦~
题图:pexels,CC0 授权。