leadscloud

Google SEO|外贸营销推广

安装paramiko有两个先决条件,python和另外一个名为PyCrypto的模块。

在WINDOWS下安装PyCrypto可能需要到这儿下载 http://www.voidspace.org.uk/python/modules.shtml#pycrypto

如果需要安装ecdsa,在命令行下输入 pip install ecdsa 即可。

我使用的是python3.3, 通过这个文档可以了解使用方法。
http://paramiko-docs.readthedocs.org/en/1.15/api/client.html

使用方法

1
2
3
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect("IP地址",22,"用户名", "口令")

最近在V2EX上发现了几个涉及人生意义的帖子。V2上这种帖子很少见,于是从头到尾地读了一遍:

意义上升到社会层面后,是很难去分清到底有没有意义,很难有一个统一的社会层面的答案。但是对于单个人而言,我的观点是:每个人都有必要去建立属于自己的世界观、价值观、人生观,然后根据自己的逻辑,去设定自己觉得有意义的事情,去做事情。

我觉得有意义的事情就是:让现代人更自由、更真实地活着。

太多人,生活在偏见、权威、传统的淤泥之中,反而不知不觉;太多人,被时代的巨轮裹挟着往前走,完全丧失了个人的意志。太多人,上班的时候被名叫“资本主义”的机器所剥削,下班后又立马投身到名叫娱乐这架大机器之中,癫狂着自己的精神。

什么都有,唯独没有自由和真实。

自知之明当然有,我还没有狂妄到想去做像耶稣、孔子、释迦牟尼这样的时代精神领袖。但是我可以通过自己擅长的方式,去做一些小而美的事情。

有哪些小而美的事情可以做?

文化

中国传统文化中有很多非常美的东西,但是现代人却找不到一个合适的姿态去面对它,要么摒弃、要么禁锢、要么浮夸。我想做的事情,就是以一种合适的方式去传播这种美,通过文化的传播去影响人们的精神。西窗烛就是一种尝试,上个月推出了移动端,取得了很小的一点成效,有待继续推进。

关于传统文化中的载体:书法,我也想做一些事情。目前最大的在线书法网站[http://www.9610.com]体验实在是太差啦,最近我注册的[shufa.io](http://shufa.io/)就是这方面的尝试。希望更多的人能够欣赏到这一中华瑰宝,

我见过很多很好很好的书,很想很想把他们分享给其他人。之前的壹经典是一个尝试,主要的手段是每期摘录经典书籍,做一个简短的点评,然后通过微信进行推送。但后来做着做着,越来越体会到单凭一个人的精力实在是难以支撑,最后只得不了了之。

出发点是好的,而 方法并不是小而美。但依然还是想做这个题材,也有一点想法,看有时间实施一下。

居住

我对人的居住环境是非常感兴趣的,觉得家是最好的慰藉人心的场地。但个人在居住环境方面能够做的实在是太少,所以暂时想不出好的切入点…

自然

人类从自然中走出,但又离不开自然。我注册过一个域名plantstar.org,可惜目前也是找不到可以做的点…

怎么去做?

合适的表达

当然会通过我熟悉的手段——互联网、移动互联网去做。

切入点是至关重要的,同样的内容,表达方式不一样,会产生天差地别的效果。信息的表达必须顺应时代的发展特征。就拿西窗烛来说,传统的网站并不适合诗词内容的消费,移动端才是贴合使用情境的主战场。同时,在产品的设计上也一定要下功夫,要学会洞察用户的潜在需求,才能做出叫好又叫座的产品。

过程也是目的

我希望做这些事情的过程是自由的,高兴的时候做,不高兴的时候就不做,不要背负太多的压力。因为目的是目的,过程也是目的。

原文:http://hustlzp.com/post/2014/10/small-but-beautiful


人生意义是什么,我们很多人常常会思考,转载这篇文章只是想思考下开始那些询问工作意义的事。我也不知道如何回答。

Pelican是一个用Python语言编写的静态网站生成器,支持使用restructuredText和Markdown写文章,配置灵活,扩展性强。它有许多主题和插件可供使用,这也是我选择它的原因,诸如相关文章,站点地图,这些功能它都有。

网上关于它的使用教程很多,大多都是复制来复制去,具体的教程在部分都是基于linux系统,在windows下面的操作前半部分是一样的,后期如果按照网上的教程就不行了,这些需要自己摸索。

只说下它的一些入门体验吧,供大家参考。个人认为,它只适合搭建静态博客,然后上传到诸如github pages这些云端上面。对于一些简单的功能它是可以的,但如果想让它像wordpress那样支持众多功能是不现实的。本来选择它是想代替cms,制作好静态网站后自动上传到FTP,但是在windows下面自动上传到ftp,本身它是不支持的,需要借助相应的工具,这点就不太好了。

作为博客大家可以使用,但作为CMS,它还是有一些不便之处的,例如:
不支持自动缩略图这项,列表页只能有文字,如果想每个列表都有缩略图的话,需要在相应文章下面设置,非常麻烦。
每一个文章都需要设置分类这,如果不想每个文章设置可以设置目录名作为分类名,但不支持多级目录,就是无论多少级目录,它只会以文章的第一级父目录作为分类,插件也没有发现相应的支持的。
如果你想批量生成许多网站,用它不方便,它适合生成一个网站,长时间维护比较方便。

昨天Google更新了,之前许多排的词都消失了。矿山行业相关的词汇现在越来越多排到第一页的是那些拥有品牌知名度的或者是企业官方网站的网页。
另外有一个新的发现是Google对于不同地点的搜索查询排名变化也比较大,以前都是差不多的,现在这个差别比较明显。
消失的网页大多是长期发外链,优化过比较长一段时间的,这次的变化对很多人的打击是比较大的,最近优化时间不是很长的一些网站排名倒是上去了。看来优化这块,链接仍然很有效果,但Google越来越能识别你的外链质量及目的了。

crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。通常,crontab储存的指令被守护进程激活, crond常常在后台运行,每一分钟检查是否有预定的作业需要执行。这类作业一般称为cron jobs。crontab文件包含送交cron守护进程的一系列作业和指令。每个用户可以拥有自己的crontab文件;同时,操作系统保存一个针对整个系统的crontab文件,该文件通常存放于/etc或者/etc之下的子目录中,而这个文件只能由系统管理员来修改。crontab文件的每一行均遵守特定的格式,由空格或tab分隔为数个领域,每个领域可以放置单一或多个数值。

crontab的命令如下

-e 表示编辑当前的crontab
-l 表示列表显示当前的crontab任务
-r 表示删除当前用户的crontab
-i 表示删除crontab时给予提示信息

创建定时任务使用命令 crontab -e , 它有一定的规则:

分钟 小时 日 月 星期 命令

1
2
3
4
5
6
7
8
* * * * * command to be executed
- - - - -
| | | | |
| | | | ----- 星期(一周中的星期几) (0 - 7) (周日=0 or 7)
| | | ------- 月 (1 - 12)
| | --------- 日(每月中的第几天) (1 - 31)
| ----------- 小时 (0 - 23)
------------- 分钟 (0 - 59)
1
*/1 * * * * root  /opt/bin/test-cron.sh //表示每隔一分钟执行一次脚本

修改crontab之后,记得执行/etc/init.d/cron restart重启cron服务。。。

我们是谁?【BBC 科学的故事E06 中英双字

这个视频很有意思,里面提到一个斯金纳箱

斯金纳箱内装有一个操纵杆,下面有一个是食物盘,操纵杆与提供食丸的装置相连。只要箱内的动物按压操纵杆,就会有一粒食丸滚到食物盘内。斯金纳将饥饿的白鼠放于箱内,白鼠在箱内乱跑,活动中偶尔踏上操作杆,就有一粒食丸掉落在食物盘内,白鼠便吃到了食丸。白鼠经过几次尝试,会不断按压杠杆,直到吃饱为止。于是斯金纳认为,有机体做出的反应与其随后出现的刺激条件之间的关系对行为起着控制作用,它能影响以后反应发生的概率。

同样的,我们人类也是这样呢?

/usr/local/nginx/conf/proxy.conf 添加上一行

1
proxy_set_header   X-Forwarded-Proto $scheme;

wordpress 的 wp-config.php 添加上:

1
if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') $_SERVER['HTTPS']='on';

wordpress wp_options中的home,改为https的地址。

煎蛋起名叫形象化你的硬盘存储空间,我给起名硬盘空间描述,够艺术的。用不同的块颜色表示硬盘空间的被使用量,点击任何一块都会具体到单一文件,运行程序即开始统计,需要等待一段时间。挺有趣的。我把他们的描述偷来了,嘿嘿

这里有一个免费的软件,可以在windows,linux和Mac上运行。

他好玩的地方是可以让你通过不同的色块来看到你硬盘上存储的视频、音频等不同文件,还有这些文件在你的硬盘上所占的空间比例。不用不知道一用下一跳啊~~~
下载地址: http://windirstat.info/

转载原文: http://www.appinn.com/windirstat/

从服务器上直接看txt文件有时会显示乱码,更改下网页编码即可,但这样对于用户不太友好。
后来发现服务器在返回响应时的编码没有设置。
.htaccess文件中加上下面一句话即可。

1
AddDefaultCharset utf-8

没添加前的服务器响应:

1
Content-Type:text/plain;

添加后的服务器响应:

1
Content-Type:text/plain; charset=utf-8

可以看到,多了一个 charset=utf-8

Requests 使用的是 urllib3,因此继承了它的所有特性。Requests 支持 HTTP 连接保持和连接池,支持使用 cookie 保持会话,支持文件上传,支持自动确定响应内容的编码,支持国际化的 URL 和 POST 数据自动编码。现代、国际化、人性化。

最近在使用Requests的过程中发现一个问题,就是抓去某些中文网页的时候,出现乱码,打印encoding是ISO-8859-1。为什么会这样呢?通过查看源码,我发现默认的编码识别比较简单,直接从响应头文件的Content-Type里获取,如果存在charset,则可以正确识别,如果不存在charset但是存在text就认为是ISO-8859-1,见utils.py。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
def get_encoding_from_headers(headers):
"""Returns encodings from given HTTP Header Dict.

:param headers: dictionary to extract encoding from.
"""
content_type = headers.get('content-type')

if not content_type:
return None

content_type, params = cgi.parse_header(content_type)

if 'charset' in params:
return params['charset'].strip("'\"")

if 'text' in content_type:
return 'ISO-8859-1'

其实Requests提供了从内容获取编码,只是在默认中没有使用,见utils.py:

1
2
3
4
5
6
7
8
9
10
11
12
def get_encodings_from_content(content):
"""Returns encodings from given content string.

:param content: bytestring to extract encodings from.
"""
charset_re = re.compile(r'<meta.*?charset=["\']*(.+?)["\'>]', flags=re.I)
pragma_re = re.compile(r'<meta.*?content=["\']*;?charset=(.+?)["\'>]', flags=re.I)
xml_re = re.compile(r'^<\?xml.*?encoding=["\']*(.+?)["\'>]')

return (charset_re.findall(content) +
pragma_re.findall(content) +
xml_re.findall(content))

还提供了使用chardet的编码检测,见models.py:

1
2
3
4
5
@property
def apparent_encoding(self):
"""The apparent encoding, provided by the lovely Charade library
(Thanks, Ian!)."""
return chardet.detect(self.content)['encoding']

如何修复这个问题呢?先来看一下示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
>>> r = requests.get('http://cn.python-requests.org/en/latest/')
>>> r.headers['content-type']
'text/html'
>>> r.encoding
'ISO-8859-1'
>>> r.apparent_encoding
'utf-8'
>>> requests.utils.get_encodings_from_content(r.content)
['utf-8']

>>> r = requests.get('http://reader.360duzhe.com/2013_24/index.html')
>>> r.headers['content-type']
'text/html'
>>> r.encoding
'ISO-8859-1'
>>> r.apparent_encoding
'gb2312'
>>> requests.utils.get_encodings_from_content(r.content)
['gb2312']

通过了解,可以这么用一个monkey patch解决这个问题:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import requests
def monkey_patch():
prop = requests.models.Response.content
def content(self):
_content = prop.fget(self)
if self.encoding == 'ISO-8859-1':
encodings = requests.utils.get_encodings_from_content(_content)
if encodings:
self.encoding = encodings[0]
else:
self.encoding = self.apparent_encoding
_content = _content.decode(self.encoding, 'replace').encode('utf8', 'replace')
self._content = _content
return _content
requests.models.Response.content = property(content)
monkey_patch()

原文:http://liguangming.com/python-requests-ge-encoding-from-headers

0%