Google Code Search被关闭了

我还记得之前写程序时用到了Google Code Search,开源代码确实帮了我很大的忙,当然谷歌的Code Search很好用,后来做Web后这块就渐渐冷落了,有很长一段时间没有去Code Search了,正好最近又要查找一个算法,但是不幸的是Google Code Search被关闭了。现在 访问代码搜索页面 ,将反馈如下信息:

Sorry! Sadly, this service has been shut down. (please see the official blog post and the discussion for details.) Much of Code Search's functionality is available at Google Code Hosting including search for Chromium. We're very sorry for the inconvenience. -- Your Google Code Search team

泪奔,也不晓得是什么时候关闭的,Google之前确实有关闭一些服务的先例,但是都是一些不常用的服务,但这次关闭Code Search代码搜索确实让人感到沮丧,多么好的一项服务啊。

Posted in:
  • 软件推荐及相关资讯
Tagged
  • 网络服务
  • 感想

Python计算并按比例获取随机票数

之前做的一个计票程序,需要用随机票数对程序进行样本测试,当然为了使测试接近于真实情况,对于三种投票结果(赞成、反对、弃权)按比例进行适当的调整。

下面我使用Python简单阐述一下这个简单的算法,首先获取一个随机票数,可以简单的通过随机一定范围的数字来实现,这个用Python实现比较简单,可以import random,然后通过random.randint(下限, 上限)来产生。我们可以先通过IDLE下面的脚本来查询使用方法:

import random
help(random.randint)
# -- output --
# Help on method randint in module random:
#
# randint(self, a, b) method of random.Random instance
#    Return random integer in range [a, b], 
#      including both end points.
Posted in:
  • 数据结构及算法理论
  • VBScript/JavaScript/Python
  • 系统应用程序开发
  • 计算机学习与研究
Tagged
  • 统计
  • 算法
  • python

VBA/VBScript批量搜索多个Word或者Excel指定的包含文字

假设我们有多个Word或者Excel文件,现在我们要从这些文件中搜索特定的关键字,比较笨的办法就是一个一个打开,然后“编辑 - 查找”,文件少还好办,如果文件比较多的话,那么打开这么多文件也累得我们够呛。

下面我讲解一个利用VBScript自动批量搜索特定文字的办法,首先还是上面的算法,只不过将人工一个一个打开换成计算机自动打开。实际上这里主要是枚举文件,然后在利用ActiveX控件调用Word.Application或者Excel.Application内部的查找方法来实现相关功能。

对于一份简单的Word文档,基本的查找VBA可以像下面这样实现:

Dim hasFound ' 定义是否找到
Selection.WholeStory
With Selection.Find
    .ClearFormatting
    .MatchWholeWord = False
    .MatchCase = False
    hasFound = .Execute("要查找的文字")
End With

转化为VBScript代码也很容易,多个创建Word.Application并打开Word文件的过程。

Posted in:
  • VBScript/JavaScript/Python
  • 系统应用程序开发
Tagged
  • excel
  • vba
  • word
  • vbscript

博客被疑似自动化黑客工具攻击

就在刚才收到了WordPress的Login Lock报警邮件,IP地址为118.192.35.178尝试登录博客后台失败多次,并且IP地址已经被阻止,所尝试的用户名为88888\'。

顿觉奇怪,心想不会谁无聊蛋疼到想去通过程序漏洞尝试黑WP吧,至少WP有这么多朋友使用,加上官方强有力的支持,安全性还是有保障的。于是尝试搜索这个IP地址,果然被我找到了一些痕迹,主要是一些留言和评论板,基本上都是用户名为88888内容为空,或者用户名和内容都是88888。到这里,我心里稍稍有了点底,至少可以判断是自动化程序自动攻击的,然后看到那么多网站的帖子都有88888的痕迹,再推断是不是自动发贴机在作怪,就像WP里屡禁不止的垃圾评论一样,但是想想奇怪的是我垃圾评论里没有收到该IP类似的帖子,看来不仅仅是这么简单。

登录服务器,使用下面的命令导出和该IP相关的Nginx访问日志。

cd /var/log/nginx
cat *.log | grep 118.192.35.178 > /tmp/attack.log
cd /tmp
more attack.log
Posted in:
  • 计算机应用及维护
  • Unix/Linux/BSD系统
Tagged
  • Web安全
  • 挂马
  • 漏洞
  • 网络安全
  • SQL注入

Python的字典(Dictionary)按顺序遍历

最近尝试着改用Python取代VBScript来实现一些功能,当然也遇到了一些麻烦,这里我要说明的是Python的字典和VBScript所调用的字典对象是有些区别的。

字典可以叫做哈希(Hash)表或者K-V存储表(Key-Value),也就是说一个独立的键值对应一条数据,Key是不能重复的,因为需要快速索引数据,字典进行数据查找,效率是很高的,当然其效率是靠空间换来的。

好了,说了这么多,下面介绍下,我遇到的一点区别,在VBScript中不原生支持字典特性,不过我们可以通过CreateObject("Scripting.Dictionary")来创建一个字典对象,然后通过Add方法添加Key Value,也可以说我比较的是Python和Scripting.Dictionary组件对象的区别,我在 前面的文章 中简单的介绍过这个对象相关的使用方法,这里再给出相应的脚本:

Posted in:
  • VBScript/JavaScript/Python
  • 系统应用程序开发
Tagged
  • dictionary字典
  • python

近况@2012.04.12

很长时间不写博客了,主要是因为比较忙,当然也受某些无视我的转载要求不署名转载的影响,我的转载要求在文末注明了,可能不太明显吧,准备提前到文头,当然之所以放到不是很明显的地方,主要是为了不影响大家阅读,把主要精力能够放到内容上来,当然对于某些人来说,即使版权声明和转载要求再明显也无济于事。

今天中午的时候博客出现无法访问的现象,另外收到第三方监控报警的邮件:

中国电信骨干网故障

本来以为服务提供商又被DDoS了,准备登录服务商网站上查询相关信息,结果服务商网站也打不开,和其他网友讨论得知由于中国电信骨干网发生问题导致国外网站无法访问,正好我的网站也处于境外,不过还好不久后就恢复了,基本上给自己提了个醒:网站数据要及时备份!当然无论是境内还是境外。不过我准备适时将网站迁回国内,主要做技术网站,备案问题应该不大,就是麻烦些吧,毕竟网站访客多是来自国内的朋友。

Posted in:
  • 我的生活点滴
Tagged
  • 网站维护
  • 生活
  • 工作

解决XP下搜索文件“意外错误,操作无法完成”问题

使用Windows XP自带的搜索助手进行搜索,出现“意外错误,操作无法完成”的警告框,经过网上查找找到解决方案,通过导入注册表文件来修复,之前想通过安装Windows Search 4.0来解决的,虽然安装Windows Search 4.0也能解决这个问题,但是Windows Search 4.0太花哨了,经过测试 网上的注册表方案 能够完美解决,所以记录这里留作备忘。

下载地址:[download id="1126"]

Posted in:
  • 计算机应用及维护
  • Windows系统
Tagged
  • windows
  • 系统故障

解决服务器Broadcom BCM5716C: The network link is down问题

服务器是戴尔(DELL)的,用来作为网关型服务器,提供上网及流量控制,前几天一直反应所连接客户端会断开互联网连接几分钟,之前怀疑是交换机问题,后来查看Windows事件系统分支,找到类似下面来源为 l2nd 的警告类型描述:

Broadcom BCM5716C: The network link is down.
Check to make sure the network cable is properly connected.

大概几分钟或者更短的时间后,会有一条来源为l2nd的消息类型描述:

Broadcom BCM5716C: Network controller configured for 100Mb full-duplex link.

搜索网络后,基本硬件问题锁定服务器网卡和网卡所连接的交换机,软件问题就锁定网卡驱动了,为了使整个局域网运行稳定,决定先从简单的入手,即解决软件问题。其中戴尔(DELL)中文技术支持论坛给出了 参考的解决方案 ,意思是升级网卡驱动,根据事件日志提供的Broadcom BCM5716C网卡型号,决定到Broadcom官方网站 《NetXtreme II 1 Gigabit Drivers》 下载所需驱动。

Posted in:
  • 计算机应用及维护
  • Windows系统
Tagged
  • windows
  • 网络故障

被服务器操作系统更新升级搞怕了

上次由于博客数据库莫名奇妙崩溃而决定升级系统,结果这个出错那个出错,捣腾了一天才好不容易恢复,于是对升级服务器操作系统算是害怕了。昨天我远程去维护客户的Windows Server 2008 R2服务器系统,当天晚上通过远程桌面连接上做完例行维护后,我再一次手贱点了上面安装重要的更新,结果杯具开始了,一会工夫,远程桌面黑掉了,而且没有任何反应,由于是远程控制,我想估计安装更新需要重启吧,于是我就耐心的等待,一个小时过去,二个小时过去了,依旧无法连接远程桌面,真愁人啊,机房那边晚上没人值班,只有等第二天早上了。今天电话联系了机房那边,据说服务器处于蓝屏状态,而且重启后依旧蓝屏,在启用最近一次正确的配置才恢复正常。打开事件查看器,一堆Windows Update安装更新失败的错误提示,最近的一次消息内容如下:

Posted in:
  • 计算机应用及维护
  • Windows系统
Tagged
  • windows
  • 系统故障

Windows 8仍然支持Visual Basic 6编写的程序

不久前微软宣布Windows 8继续支持Visual Basic 6平台的消息,让VB6再一次接到“死缓”的通知,貌似Windows 7宣布支持VB6时就有消息称,Windows 7之后的平台可能不再支持VB6,看来这次要感谢微软的手下留情,我也不得不怀念一下VB这个编程语言以及其IDE环境Visual Basic 6。

我还记得这个是我接触的第一门计算机编程语言,而且还是上高中信息课上老师教授的,可以说VB算是我编程生涯的引路人吧,但是曾经风光无限的VB6,如今已经风中残烛了,微软也算是亲手缔造也亲自毁灭了她,不由得想起了过去的ASP,一款以VBScript为主的动态网页技术,如今也没落了,就和VB6一样。微软为了其.NET计划真的放弃了太多,但是有一点不得不承认,那就是微软的东西确实上手容易,有利于提高开发效率,所以这也是很多人喜欢微软产品的原因。

Posted in:
  • 软件推荐及相关资讯
Tagged
  • vbscript
  • vb
  • 感想

© Wang Ye / 王 晔. All rights reserved.