0%

之前负责的大数据项目里,由于客户提供的云环境过于特殊,Spark 的版本太老,用不上 Apache Livy ,迫于无奈只能自己实现一个较为直接(菜鸟)的 Spark Restful 交互,当时有一个难点就是需要将 PySpark 运行的某些信息额外存一份到 HDFS 上。当然 RDD 存 HDFS 上对于 Spark 来说是非常方便,但是却怎么也找不到 PySpark 直接操作 HDFS 的方法,当时是参考了 Raven’s Blog 的一篇文章解决了,也了解到了 PySpark 用于操作 Java 对象的库 Py4J ,然后心血来潮,稍微归纳一下目前自己用到或者摸过的 Python 和其他语言的互操作库,纯粹分享(水一篇 blog)。

阅读全文 »

最近在使用 golang 进行项目开发,而公司的主要数据库还是 Oracle ,在尝试 golang 连接 Oracle 上着实碰到了钉子,没想到都 9102 年快结束了 oracle 依然没有提供 golang 的驱动,目前现有的库只能基于 oci8 来调用,而大部分对 Windows 上进行开发都不怎么友好(毕竟要交叉编译),我选择的是 go-oci8 ,开发机器是 Windows10 64 位,当中的过程在这里小小的分享一下。

阅读全文 »

Sentry 是一个开源的实时错误追踪系统,可以帮助开发者实时监控并修复异常问题。它主要专注于持续集成、提高效率并且提升用户体验。Sentry 分为服务端和客户端 SDK,前者可以直接使用它家提供的在线服务,也可以本地自行搭建;后者提供了对多种主流语言和框架的支持,包括 React、Angular、Node、Django、RoR、PHP、Laravel、Android、.NET、JAVA 等。同时它可提供了和其他流行服务集成的方案,例如 GitHub、GitLab、bitbuck、heroku、slack、Trello 等。目前公司的项目也都在逐步应用上 Sentry 进行错误日志管理。

阅读全文 »

上一篇 blog 主要介绍了 Python import 的机制,其中的 finder 、 loader 、 importer 以及 import 协议都和 PEP320 密切相关。PEP320 的内容倒不是很长,也主要是一些前因后果的内容,同时作为(曾经)新提出的标准,现在也以通过标准库的 importlib 得以实现了。不过,作为前文的扩展内容,也是值得一看的。这篇依然是译文,感觉个人的翻译能力还是有限,不过多少还是会坚持下去,如果有不正确的地方,也欢迎指出 🙂。

阅读全文 »

对于 Python 的 import 机制,一直以来感觉都一知半懂,尤其是对于 Python 这种非常 freestyle 的操作,在项目组织上没有什么固定的目录结构可言,如果部署或者打包的时候发生 import 出错或者失败,有时候确实会丈二和尚摸不着头脑,充其量就改改 sys.path 就完事了。但是这样的实现无疑是 ugly 的,要想明白 import 的工作原理,还是得好好地啃啃硬骨头。

所以这篇 blog 就这么来了,内容会包括:

  • 模块和包的基本介绍
  • 默认的 import 流程和常见的 hack 手段
  • import 协议以及相关对象:finder、loader、importer 和 spec
  • 两种 import hook
阅读全文 »

之前貌似说要再重新学习一下 DB API 的内容,但是拖延症发作,好不容易才看了一遍这份 PEP249 的内容,顺手又作了一下翻译(应该是继 PEP3333 以来的第二篇)。不过本人能力有限,可能还是会有一些蹩脚的地方,请谨慎食用😜。

阅读全文 »

APScheduler 算是 Python 中一个比较轻量级的定时任务库了,基于 Quartz ,而且在项目上也用得不少(毕竟可以跨平台而且配置起来方便),之前接手项目的时候也了解过一下,太久没用又忘了 (ˉ▽ˉ;)… 想想如果在 Blog 里面记下来,有时候顺手翻翻也好。

这里介绍的 APScheduler 是 8 月份的 3.5.3 版本,本人用的是 Python 3.5。如果有别的问题,欢迎交流,或者查看 Version History !

阅读全文 »

最近接手了一个全网爬虫的工作项,基于 Python 2.7 ,用到了 Scrapy 框架,同时也用了 newspaper 这个库(github 地址)来做基于标签密度的正文内容提取。鉴于之前一直运行良好,所以我也没有太在意这一块。后面事业部那边说最近发现好几个网站的网页都出现了中文乱码,让我处理一下这个问题。末了我也顺手把处理的经过记录一下,分享一下经验。

阅读全文 »

由于新工作关系的原因,需要用到中文分词去计算两个文本的相关度。中文分词器发展到现在也五花八门,如 .NET 下经常会用到的盘古分词,JAVA 的 IKAnalyzer、庖丁解牛,以 api 服务形式提供的搜狗分词、腾讯文智等。在 Python 下比较常用的中文分词库就是 jieba 分词,结巴分词也致力于成为最好的中文分词库。

阅读全文 »