PyHubWeekly | 第十九期:谁偷看了你的电脑?

本文涉及的产品
NLP 自学习平台,3个模型定制额度 1个月
NLP自然语言处理_基础版,每接口每天50万次
NLP自然语言处理_高级版,每接口累计50万次
简介: PyHubWeekly每周定期更新,精选GitHub上优质的Python项目/小工具。我把PyHubWeekly托管到了Github,感兴趣的可以搜索Github项目PyHubWeekly[1],如果喜欢,麻烦给个Star支持一下吧。此外,欢迎大家通过提交issue来投稿和推荐自己的项目~本期为大家推荐GitHub上5个优质的Python项目,它们分别是:•vardbg•yfinance•Keylogger•numerizer•sentry-python

下面分别来介绍一下上述5个GitHub项目。


vardbg

Star:508


vardbg[2]是一款可以把Python代码调试生成可视化图像的工具。


代码调试是开发过程中占比很重的一个环节,也是非常繁琐、复杂的一个阶段。开发者一直在考虑,如果实现更加高效、准确的代码调试。


记得前不久看到Microsoft也在测试vs code的代码调试可视化工具,这让我颇为期待,我想,和我有同样心理的开发者应该不在少数。


其实,不需要等待vs code正式发布,我们就可以尝鲜这项功能。


vardbg可以把代码程序执行流程生成可视化图像,这样不仅可以有助于调试代码,还可以帮助可视化算法流程,有助于算法的学习。


35.gif


安装使用

可以直接使用pip命令安装,

pip install vardbg


也可以通过源码安装,

git clone https://github.com/CCExtractor/vardbg
cd vardbg
python3 -m venv venv
source venv/bin/activate
pip install poetry
poetry install .
./debug.py
pip install 


下面是执行一个快速排序代码的示例,


vardbg run sort.py quick_sort -o qsort.json -a 9 -a 3 -a 5 -a 1

然后,它就可以生成一个记录执行过程的可视化视频。


vardbg replay qsort.json -v sort_vis.mp4


yfinance

Star:1.8k

yfinance[3]是一款Yahoo!金融数据下载工具。


数据对于从事数据分析、挖掘方向的同学一直都是一个巨大挑战。算法、编码都是非常成熟的。但是,如果没有数据,其余的都无从谈起。


金融,作为数据应用的一个典型的应用场景,受到很多同学的青睐,但是,从哪里获取到金融数据,却成了一个令人困扰的问题。


yfinance提供一种可靠、线程化、Python化的方式,使得能够轻松从雅虎下载金融市场数据。


安装使用

通过pip安装,

pip install yfinance --upgrade --no-cache-dir


通过conda安装,

conda install -c ranaroussi yfinance


下载数据,

import yfinance as yf
data = yf.download("SPY AAPL", start="2017-01-01", end="2017-04-30")
data = yf.download(  # or pdr.get_data_yahoo(...
        # tickers list or string as well
        tickers = "SPY AAPL MSFT",
        # use "period" instead of start/end
        # valid periods: 1d,5d,1mo,3mo,6mo,1y,2y,5y,10y,ytd,max
        # (optional, default is '1mo')
        period = "ytd",
        # fetch data by interval (including intraday if period < 60 days)
        # valid intervals: 1m,2m,5m,15m,30m,60m,90m,1h,1d,5d,1wk,1mo,3mo
        # (optional, default is '1d')
        interval = "1m",
        # group by ticker (to access via data['SPY'])
        # (optional, default is 'column')
        group_by = 'ticker',
        # adjust all OHLC automatically
        # (optional, default is False)
        auto_adjust = True,
        # download pre/post regular market hours data
        # (optional, default is False)
        prepost = True,
        # use threads for mass downloading? (True/False/Integer)
        # (optional, default is True)
        threads = True,
        # proxy URL scheme use use when downloading?
        # (optional, default is None)
        proxy = None
    )

                        Keylogger

Star:802


Keylogger[4]是一款用于记录敲击键盘记录,同时生成一份日志文件的工具。

通过这款工具,你可以应用于很多场景的监控之中,例如,


监控员工工作

记录禁用的字符

保护个人隐私,确保自己不在时没有人使用你的计算机

自我分析


Keylogger是一款跨平台的开源免费工具,它同时支持如下操作系统,

WindowsmacOSLinux


numerizer

Star:73

numerizer[5]是一款将自然语言中数字转化成int或者float型数字的Python小工具。

在文本分析或者网页爬虫时,无法避免的会遇到很多数字处理的问题,例如,forty twoone million two hundred and fifty thousand and seven。想要把这些语言表述转化为数据,往往需要写一个工具类,建立自然语言与数值之间的对应关系,


同时还要处理自然语言的逻辑,这样显然会复杂很多。

numerizer是一款一行命令就可以实现自然语言数字到int和float的转化。


安装使用

可以通过pip命令安装,

pip install numerizer

也可以通过github源码安装,


git clone https://github.com/jaidevd/numerizer.git
cd numerizer
pip install -e .

可以通过以下简单示例,了解numerizer的使用,

>>> from numerizer import numerize
>>> numerize('forty two')
'42'
>>> numerize('forty-two')
'42'
>>> numerize('four hundred and sixty two')
'462'
>>> numerize('one fifty')
'150'
>>> numerize('twelve hundred')
'1200'
>>> numerize('twenty one thousand four hundred and seventy three')
'21473'
>>> numerize('one million two hundred and fifty thousand and seven')
'1250007'
>>> numerize('one billion and one')
'1000000001'
>>> numerize('nine and three quarters')
'9.75'
>>> numerize('platform nine and three quarters')
'platform 9.75'


sentry-python

Star:665

sentry-python[6]是Sentry的开源Python SDK。


那么问题就来到,”Sentry是什么?“


在一个完善的系统中,算法、开发只占据很小的一部分。我认为,负责过正式商业化项目的同学都应该清楚日志的重要性丝毫不亚于那些看似高大上的机器学习算法。系统出现了报警和异常,日志可以协助我们快速定位并修复问题。


Sentry就是一个代码实时事件日志记录和聚合平台,可以用于监控代码的报错及后续调试时所需的所有信息。


而通过sentry-python,我们可以很轻松的在Python中调用Sentry的SDK,

from sentry_sdk import init, capture_message
init("https://mydsn@sentry.io/123")
capture_message("Hello World")  # Will create an event.
raise ValueError()  # Will also create an event.
相关文章
|
Java 程序员 Android开发
关于那些编程,剪辑,开黑,我用了就离不开手的软件
关于那些编程,剪辑,开黑,我用了就离不开手的软件
71 0
|
编解码 自然语言处理 安全
电脑小白必备的五款软件,让你的电脑变身神器
你想让你的电脑更好用吗?这里有五款电脑软件可以帮你,它们可以让你的电脑更高效、美观、安全,快来看看吧!
163 1
电脑小白必备的五款软件,让你的电脑变身神器
|
自然语言处理 Windows
电脑小白不要错过这五款小众但强大的软件
电脑上的各类软件有很多,除了那些常见的大众化软件,还有很多不为人知的小众软件,专注于实用功能,简洁干净、功能强悍。
231 1
|
机器学习/深度学习 编解码 算法
让你的电脑更有逼格的5款优质黑科技软件
作为一个黑科技软件爱好者,电脑里肯定是不会缺少这方面的东西,这不,我又带着5款优质软件闪亮登场了。
184 0
|
Web App开发 前端开发 程序员
电脑上终极的摸鱼神器,非它莫属。
电脑上终极的摸鱼神器,非它莫属。
|
搜索推荐 数据安全/隐私保护 Windows
5款冷门小工具,让你的电脑变得与众不同
每个人的电脑中都会安装很多软件,可能还保留着很多不为人知的冷门软件。不过虽然冷门,但绝不意味着低能,相反很多冷门软件的功能十分出色。闲话少说,接下来我就给大家推荐5款冷门小工具,看一看有没有你喜欢的。
131 0
|
数据安全/隐私保护 图形学 Windows
推荐五款宝藏软件,身为宝藏男孩和宝藏女孩的你,不试一下吗?
今天带来五款宝藏软件,身为宝藏男孩和宝藏女孩的你们,不试一下吗?
205 0
推荐五款宝藏软件,身为宝藏男孩和宝藏女孩的你,不试一下吗?
|
前端开发 网络协议 JavaScript
我最近在用的一款神器,功能多到炸
今天就给大家分享我最近开发时在用的一款神器,API管理和自动化测试工具Eolink。想要摸鱼,就要提高效率,想要提高效率,就用这款神器!
231 0
我最近在用的一款神器,功能多到炸
|
数据采集 文字识别 索引
安利5款体积小、无广告、超实用的软件
大家好,我又来啦,今天给大家带来的几款软件,共同特点都是体积小、无广告、超实用,大家观看完可以自行搜索下载哦。
195 0
|
IDE 测试技术 开发工具
AirtestIDE这个隐藏的小助手,还没用过你就亏啦!
AirtestIDE这个隐藏的小助手,还没用过你就亏啦!
287 0