Archives : September-2019

更新日期:2019年07月10日
@IGNORECHANGE

如何限制内存使用量?

Limit Firefox memory usage on Linux
(1)升级
(2)以安全模式启动火狐,检查内存用量,以此排查那些消耗内存的主题和插件。关于排查火狐主题、插件、扩展内存消耗可以参考「这一篇」文章。
(3)通过插件屏蔽消耗内容的网页内容。比如:FLASH、脚本、广告等等。
(4)启用硬件加速。开启硬件加速和更新显卡驱动。
(5)重启火狐。
(6)少开一点标签。
(7)用内存调试工具进行问题排查。比如,about:memory,参考手册说明;使用RAMBack内存回收插件;其他的内存分[……]

Read more

# 07/09/2019

改用Python了,Python 3.7,使用GitPython库操作版本库。使用Python的最主要原因是:Shell作为一个胶水语言,则某些方面性能不行,处理速度太慢了。使用Python实现,替换原有的Shell脚本。

# 12/16/2018

本页面完全由「Git Hooks」配合「Shell脚本」自动生成。

最近七天内更新的笔记

2019/09/11 18:43 「Elasticsearch」- 常见错误列表

2019/09/11 15:48 「Qt」- WebKit and WebEngine

2019/09/11 09:05[……]

Read more

更新日期:2019年09月19日
@IGNORECHANGE

内容简介

处理TypeError: ‘module’ object is not callable错误。

问题描述

运行脚本产生TypeError: ‘module’ object is not callable错误。

问题原因

没有区分清除“模块名”与“类名”。模块名是模块名,类名是类名,二者是有所区别的。

在import时,导入的是类名,而不是模块名,应该是import <module_name>.<class_name>或者from <module_name>[……]

Read more

更新日期:2019年09月06日

Column 1
DESCRIPTION

D / d$
从当前光标位置开始,删除到行尾

v
进入Visual模式,可以选择

y
复制

p
粘贴

V、d、p
剪切

全选:ggVG
从文件中读取内容,然后插入当前位置::-1.read<filename>
行号::set number

移动光标

功能
命令

第一行开始
gg

最后一行结束
G

执行命令

功能
命令

使用XMLINT格式化
g[……]

Read more

更新日期:2019年09月06日

文档与手册

Python 2.7.15 documentation
Python 3.5.6 documentation
Python 3/Regular Expression HOWTO

# 指定文件编码

-「Working with utf-8 encoding in Python source」
-「Correct way to define Python source code encoding」
-「PEP 263 — Defining Python Source Code Encodings」
-「2.1.4. Encoding[……]

Read more

更新日期:2019年09月07日
@WEBSCRAPING

内容简介

本部分整理了与前端编程相关的语言及技术。

注意事项

虽然Node.js是后端,但是我们也把它归类到这里了。

Backlinks:
00.INDEX

文章摘要:Programming_Language:Browser-based_front-end_languages原文链接:「前端编程」[……]

Read more

更新日期:2019年07月10日

有关数据库客户端的内容可以参考「Database client」一文。

其他常用工具

格式化SQL语句(命令行)

参考:「SQL string formatter」

「sqlparse」
它使用了Python的「sqlformat」模块
安装:pip install sqlparse
但是它不支持从标准输入中读取SQL语句,不过办法还是有的:cat foo.sql | sqlformat <(cat)

「sqlinform」
不开源。没用过。

「fsqlf」
功能少。没用过。[……]

Read more

更新日期:2019年09月09日

本文介绍如何限制进程资源。

# SysV init

以前我们用的是init启动。如果要限制进程资源,可以修改/etc/security/limits.conf文件。

但是呢,我们systemd不吃这个一套。

# systemd

在systemd中,如果要限制资源,需要修改/etc/systemd/system.conf与/etc/systemd/system.conf文件。

!!!修改/etc/systemd/system.conf后,需要执行systemctl daemon-reexec命令来重新加载配置。

# 各参数含[……]

Read more

# 07/09/2019

改用Python了,Python 3.7,使用GitPython库操作版本库。使用Python的最主要原因是:Shell作为一个胶水语言,则某些方面性能不行,处理速度太慢了。使用Python实现,替换原有的Shell脚本。

# 12/16/2018

本页面完全由「Git Hooks」配合「Shell脚本」自动生成。

最近七天内更新的笔记

2019/09/10 14:42 「CentOS 7.4」- 安装mongoDB 4.2数据库

2019/09/09 09:12 「数据库」- 客户端(在Linux下)

2019/09/09 09:00[……]

Read more

更新日期:2019年09月04日
@IGNORECHANGE

内容简介

本文是《用Python写网络爬虫》学习笔记

相关资源

章节代码:https://bitbucket.org/wswp/code/src/default
示例网站:http://example.webscraping.com
相关源码:https://bitbucket.org/wswp/places/src/default
语言学习:http://diveintopython.net

#1 网络爬虫简介

1.1 网络爬虫合适有用

1.2 网络爬虫是否合法

1.3 调研网站的信息

#[……]

Read more

更新日期:2019年09月05日
@IGNORECHANGE

内容简介

本部分介绍在Python的Qt中如何处理信号与槽。

基本概念

# Slot

响应于特定信号而被调用的函数,所以本质上还是函数。在Qt中的Widget有许多预定义的slot,但通常的做法是将Widget子类化,并添加自己的slot,以便可以处理感兴趣的信号。

# Signal

当对象的内部状态发生更改时,对象会发出Signal。Signal是公共访问函数,所以说Signal还是函数,可以从任何地方发出,但官方建议只从定义信号及其子类的类中发出。

简单示例

下面是一个及其简单的示例:[……]

Read more

更新日期:2019年09月05日
@IGNORECHANGE

内容简介

本部分整理与Qt相关的内容。但是目前Python是我的主要方向,所以本部分的绝大多数内容都是与Qt的Python API相关的技术。也会涉及一些Qt的基本概念,毕竟基础原理是要懂得。

参考文献

Wikipedia/Qt (software)
GitHub/Qt

Backlinks:
00.INDEX

文[……]

Read more

更新日期:2019年09月05日
@IGNORECHANGE

内容简介

本文简单整理QApplication, QGuiAppication, QCoreApplication这三个对象之间的区别。

# QCoreApplication

基类。在命令行应用程序中,应该使用它。

# QGuiApplication

基类 + GUI功能。在QML应用程序中,应该使用它。「QML」是一种用户界面标记语言,是一种指令使的语言,与CSS有些相似。

# QApplication

基类 + GUI + 对Widget支持。在QtWidgets应用程序中,应该使用它。

#[……]

Read more

更新日期:2019年09月20日

内容简介

本部分介绍QtWebKit以及QtWebEngine相关的技术。但是,本文更侧重于QtWebEngine技术,因为在Qt5.6中移除了QtWebKit模块。

另外,本部分的内容更侧重于爬虫,因为这些技术是在写爬虫的时候才学习的(反爬虫技术再牛,也得让用户可以正常访问,不是么?那……我们就做一个正常的用户)。

# QtWebKit and Qt WebEngine

根据官方所述「QtWebKit got deprecated upstream in Qt 5.5 and removed in 5.6」,所以从后面开始,我们整体基于[……]

Read more

更新日期:2019年09月04日
@IGNORECHANGE

内容简介

本文将介绍如何使用Scrapy快速创建项目,并开始爬取页面。

创建项目

scrapy startproject “<project_name>”
cd “<project_name>” # 后面的操作多半要进入该目录中

初始化爬虫

scrapy genspider -t crawl “<spider_name>” https://www.example.com

爬取数据

scrapy crawl “<spider_name>”[……]

Read more