openshiftfq

翻墙

openshift翻墙尝试

标签(空格分隔): 翻墙


之前注册了openshift本来是想用来替代sae的,结果他的那个部署工具实在是不会用,但是自己也不想白白浪费这个将来不知道还免不免费的账号,所以就用来翻墙咯。
原理就是走ssh的端口映射啦,这里选用的是secureCRT,因为putty不知道怎么才能每次使用指定的公钥和用户名。
首先注册openshift账号以及上传公钥什么的比较简单,这里就不多说了,主要注意的是如果使用puutykeygen生成的记得保存为openssh格式这样secureCRT可以直接使用。

接下来就是secureCRT+proxifier的翻墙教程啦。
获取用户名和ssh地址@前面的就是登陆用的用户名,后面的则是ssh地址。
1.在secureCRT里面选择新建会话。此处输入图片的描述主机名就是@后面那串,用户名就是@前面那串。描述还有标题什么的随便填写就好了
2.在菜单的“选项”-“全局选项”-“SSH2”里导入之前生成并且上传的公钥。
此处输入图片的描述
3.打开连接,右键点击刚才创建的连接,“属性”-“端口转发”-“添加”此处输入图片的描述
端口填写7070,“使用socks4或5动态转发”这里得打钩。

接下来是proxifier设置:
1.新建一个配置文件
2.添加代理服务器-127.0.0.1:7070
3.设置默认规则为direct,然后把你想翻墙的程序网站添加到规则里面,这样访问无须翻墙的网站速度还是过得去的。

最终效果:
此处输入图片的描述

最后说下openshift主要还是用来部署程序,做一些云应用什么的。而且之前openshift就因为被大规模地用来作为翻墙跳板而屏蔽过,再加上现在速度也不理想,所以大家平时用来查资料什么的就好了。就当做各种翻墙方案的一种后备手段吧。

aria2

树莓派

编译aria2c

标签(空格分隔): 树莓派


因为最近实在不想看单片机视屏了,gpio也陷入瓶颈,python进展也比较慢。于是乎就找些好玩的源码编译一下咯。话说回来,还真是不查不知道,树莓派上很多软件的版本真的很老。比方这次打算尝试的aria2,树莓派上的版本是1.15,sourceforge上已经更新到了1.19了。
废话不多说,首先就是从SourceForge上获取aria2源码啦,注意别下成win32的。(github上面也有对应项目,但是不知道为何不能直接按照网上的编译教程来)。
下载好了后cd到源码目录,接下来的事情就三句话

./configure
make
make install

然后就是漫长的等待了
./configure
make

ndsl

技术

NDSL导电胶更换

标签(空格分隔): 技术


最近因为的确找不到什么事情可以做的,于是乎就网购了一套导电胶来修补一下NDSL惨不忍睹的手感。
首先最重要的也是所有拆机的共同点——把电池、触控笔还有保护卡这一类的东西能拆就先拆了。接下来建议跟着网上的教程走,因为ndsl有挺多隐藏螺丝的(比方说防滑垫下面的还有电池下面的)。在拆机的时候个人建议准备一个磁铁一类的东西,用这玩意收纳螺丝钉实在太有用了。还有就是注意在拆机的过程中别吧lr的弹簧弄坏了,那个太难装了。翘壳子建议用校园卡什么的,一点一点的撬开,如果翘不开,就检查一下还有没有螺丝钉没卸下来的,千万不要用蛮力。
然后把电路板掀开以后换导电胶也就是那么回事啦。
此处输入图片的描述
此处输入图片的描述

fanspeed

技术

树莓派风扇测速 update

标签(空格分隔): 技术


经过整整一天的折腾,也总算弄明白了风扇测速线的大概工作原理。首先第一个错误就是风扇并非一个i2c设备(这个被喷了),而是标准的pwm设备。测速线输出速度的方法是,通过调整输出脉冲的宽幅(大概就是方波的波长吧),来输出占空比(有波的长度和输出周期的比值),然后占空比和转速是成正比的,查表就可以得到风扇的转速了。还有一种是转一圈输出一个脉冲,但是根据我的测试,手头上的风扇明显不是这种。
所以要检测速度也是比较简单,参考了下单片机检测风扇速度的方法,检测测速线输出的下降沿就好了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import RPi.GPIO as gpio
import timeit
import time
gpio.setmode(gpio.BOARD) #设置模式为board
gpio.setup(7,gpio.OUT)
gpio.output(7,0)
time.sleep(1)
gpio.output(7,1) #无论如何先这样操作一下
gpio.setup(7,gpio.IN)
def timer1() :
while True :
if gpio.input(7) == 0 : #检测下降沿
gpio.setup(7,gpio.OUT)
gpio.output(7,1)
gpio.setup(7,gpio.IN)
if gpio.input(7) == 0:
break
def load1() :
gpio.setup(7,gpio.OUT) #排除掉设置的时间
gpio.setup(7,gpio.IN)
if __name__=='__main__':
from timeit import Timer
import RPi.GPIO as gpio
t1=Timer("timer1()","from __main__ import timer1") #计算两次下降沿的时间
t2=Timer("load1()","from __main__ import load1")
t1=t1.timeit(1)-t2.timeit(1)
t1=t1/0.00004 #计算占空比
print t1

代码效果

fan

技术

树莓派关于风扇的折腾

标签(空格分隔): 技术


暑假回家以后就一直在折腾树莓派。aria2c下载机以及samba共享什么的,因为dietpi都有现成的方案,所以就不说了。主要还是集中在对gpio口的各种折腾上面。
失败的项目有:
1.pifm传送图片(没有找到合适的sstv2wav或者psk31-wav脚本,自己也不理解编码方式。对于python建立wav文件也实在不明白)
2.树莓派连接郭天祥的实验板做实验(因为自己傻逼地忘记购买电阻,所以输出电流无法控制,怎么弄都是高电平)

现在就来说下迄今为止还算成功的项目吧——树莓派加装风扇
风扇是从父亲那坏掉的hp mini 110上拆下来的。有三根线,红5v、黑gnd、黄是测速线。
40pin的具体定义
不得不说,这个风扇还是给力的。树莓派cpu的温度从43度下降到了35度,虽然感觉也没起到什么特殊的作用,但是总算废物利用了不是吗?
最主要的折腾还是通过测速线读取风扇的转速。通过资料知道了这种一条线的八成就是i2c协议总线什么是i2c了。于是便开始上手折腾i2c,开启i2c支持主要是一下几个方面:
1.官方系统可以在adavnaced option里面直接开启
2.如果是我等dietpi,需要修改config.txt,blcklist等

注意这里风扇测速线应该直接接pin3也就是sda,但是也不知为何好像其他的传感器(dht11)之类的都是随便接一个gpio就完事了。至于电阻什么的接不接好像又有很多种定论。最重要的还是没人像我这样闲,所以关于风扇测速线的接法也很难找到。不过可以参看树莓派从 DHT11 温度湿度传感器读取数据,也算是触类旁通吧。

lkong2weibo3

技术

lkong2weibo

标签(空格分隔): 技术


还是不习惯写博客,又有一段时间没有更新啦。不过就连我自己都没想到自己当初只是为了发泄的作品,竟然能够走那么远。
update:
2015年7月7日22:36:35

  1. 采用了高大上的异步采集方式,每次beautiulsoup处理一次网页,采集4个数据——两个书评以及对应的两个链接,然后发两次微博,这样能减少fetch url,至于效果是否明显,得观察一天啦。还是没有很好地掌握python对列表的遍历。不然我想用循环的方式写,一次采集五个,这样节省云豆的效果可能更加明显。
  2. 加入对短网址的处理,因为微博提供了对应的json提交方式,所以我对照发微博的方式写了,感觉并不难

对lknog2weibo未来的展望

  1. 首先当然是进一步优化代码了,伪异步还是需要提高,希望能自己判断更新的频繁程度来进行调整
  2. 比较简单的一个就是在程序内部增加根据时间来停止应用
  3. 折腾完lkong2weibo这个项目以后,想做更高大上的。大数据啊,分布式爬虫啊,lxml什么的,beautifulsoup虽然用起来简单,但是缺点就是局限性啦

lkong2weibo almost finish

技术

lol,lkong2weibo完成度已经达到百分之八十

一开始以为可能这个学期都无法完成这个项目,没想到两天能到达这个地步,真的为自己感到高兴。

具体的解决方法

  1. 首先就是用beautifulsoup处理“

    ”标签。网上都说lxml更加强大,但是感觉beautifulsoup的确非常容易上手。就比方说提取p标签tag=soup.find("div","ys-comments-message")。感觉比较容易理解,至少比之前的正则表达式好用太多。其实这应该是最容易的一个部分,因为我主要抓取的就是一个网页,而且优书网的格式还是比较标准的。
  2. 提取完文本以后需要进行两步处理:提取正文和转换编码,msg=tag.get_text(),转换编码在发送部分执行
  3. 接着就是判断是否为最新书评这个部分,这一部分也是我折腾了比较长时间的一个部分。一开始我的想法是提取“xx分钟前”的xx来进行判断,结果刚刚在网上找到相应的正则表达式>>> p = re.compile(r'\d+')>>> p.findall('vid:122313'),并且执行了以后就抓到了第一个bug-用户名中存在数字(我是抓下正文,然后直接提取数字)。为了解决这个问题,我加了个数字是否小于60的判断。结果第二天抓到了第二个bug,“xx小时前”,这样就严重干扰了之前的判断。无奈只好用之前的办法了——把评论文件存在本地,下次抓取后进行比较,相同则不发送。然而sae是不支持本地文件处理的,对应提供的是storage、kvdb、memcache。最后一个需要云豆,果断放弃。而storage在存储文件的时候出现了编码问题,放弃。只能用kvdb了。
  4. 发送微博。也是比较蛋疼的一个部分,一开始怎么都找不到一个简洁一些的发送方式,知道找到了微博比特币价格机器人,不光提供了只需要token的发送方式,还提供了一种比较简单的获取token的方式。p.s:有时候会莫名奇妙地发送失败,所以加了个header伪装一下。
  5. 最后还没有处理好的就是常驻后台,cron一天只能执行32次任务,所以并不完美。
参考连接:[python re 正则表达式 怎么获取vid:122313, 其中的数字?][2]
[Beautiful Soup 4.2.0 文档][3]
[sae python手册][4]

update:lkong2weibo

技术## ifttt方面 ##
也许是ifttt最近修正了他的feed的问题,所以之前一直无法识别的rss突然可以识别了,所以我的微博
如今用的就是ifttt实现的lkong2weibo。缺点还是原来那样——更新频率太慢

python爬虫方面

之前也说到了,因为我要实现的主干网上都有现成的[微博python sdk][2]。所以主要困难集中在如何提取固定的网页标签中的内容包括:
  1. 书名号内的书名
  2. 标签内的书评
  3. 3
    中间的评分3

处理方式根据昨天晚上的查找大概有一下几种

  1. 正则表达式
  2. beautifulsoup
  3. htmlparser

其中beatifulsoup是最为方便的,因为模块里已经预设好了各种标签。
所以我主要是用beautifulsoup处理的,代码如下:

lkong2weibo

import urllib2
from bs4 import BeautifulSoup

response=urllib2.urlopen(“http://www.yousuu.com/comments/digest")#读入优书网网址

soup=BeautifulSoup(response)

print soup.find_all(‘p’)#输出所有

标签内容

但是最后还是出错了,错误如下
错误

顺便赞一下实验楼,整个过程都是在实验楼的虚拟机中完成的,响应速度真心不错。

whistle

随笔 线代终于考完了,感觉不是特别好吧。主要是第五章的内容自己复习的不够,只有继续努力复习才能忘掉这些没必要的东西啦。C语言也不是非常理想,67分,虽然也是过了,虽然不影响毕业。
唯一值得自己庆幸的就是自己淘的爱尔兰哨笛终于到了,属于我的自我提升计划的一部分吧。
苏萨特的黄鹂鸟

苏萨特的黄鹂鸟

到手了以后真的毫无感觉啊,abs所料真的让人感觉是凄美小博士啊。而且说好的和竹笛指法相似呢?
竹笛的在指法哨笛的指法

后来在网上进一步了解到,竹笛的G调=哨笛的高音D,那就还好,至少碰到一个自己熟悉的了。不过也是很久没有吹笛子了,拍数啊、识谱啊都不行了,只能说继续练习吧。

lkong2weibo

技术

##为什么会产生这个想法
1.之前折腾IFTTT,尝试了下推送hipda的内容,虽然成功了,但是意义并不大。后来反应过来了还有龙的天空,并且发现了这个连接——大波书评。尝试着用feed43自烧了一个rss源

。个人感觉排版什么的都还算不错吧,悲剧的是ifttt竟然不识别。

2.feed43的更新频率据说是八个小时,而龙空书评的产生频率要远远高于这个刷新频率。之前做的bs2weibo也是如此,突然一下发一大堆微博,让多位好友被悲惨刷屏。

##解决方案
1.刚好最近在学python,网上又有现成的python登陆发送微博的教程。所以打算做个python爬虫,定时抓取优书网书评,然后发微博。

##需要的准备工具
1.python才学到装饰,争取下周内学完,然后开始爬虫学习

2.如果网上diy的python2weibo脚本不行,只能自己啃微博的python sdk了

3.尝试着翻墙弄个gae吧,虽然自己有树莓派,但是教育网实在太不友好