----------文章----------

24
Jan

kali翻墙 (ss+proxychains)

安装命令行界面的Shadowsocks

终端输入:
apt-get install python-pipsudo pip install shadowsocks
创建配置文件-终端输入:
gedit /etc/shadowsock/config.json

加入下面的配置内容,并补全配置信息

{ "server":"服务器地址", 
"server_port":服务器端口号, 
"local_address": "127.0.0.1", 
"local_port":1080,
"password":"密码", 
"timeout":300, 
"method":"加密方式",
"fast_open": true,
"workers": 1}

终端启动客户端:
sslocal -c /etc/shadowsocks/config.json


配置proxychains

打开proxychains配置文件:
leafpad /etc/proxychains.conf

将socks4 127.0.0.1 9095改为socks5 127.0.0.1 xxxx
//xxxx改为你自己的端口

去掉dynamic_chain前面的注释符

添加代理服务器列表在最下方这, 默认是socks4 xxxx xxx
改成sock5 127.0.0.1 1080


测试代理服务是否正常

终端输入:proxyresolv www.google.com

此时执行会出现命令未找到

终端输入:cp /usr/lib/proxychains3/proxyresolv /usr/bin/

然后再次执行 proxyresolv www.google.com
//在执行过sslocal -c /etc/shadowsocks/config.json之后,这时候ss的命令界面应该是正在运行的

返回ok,说明配置正确,可以愉快的跨栏了。^ ^


使用ProxyChains 启动firefox

终端输入:proxychains firefox //启动火狐浏览器


使用ProxyChains代理其他程序

终端输入:proxychains msfconsole//启动msf

终端输入:proxychains python shodanwave.py//代理终端

02
Jan

开机后台自启-休息提醒小工具(TKinter)

# remind.py
# -*- coding: utf-8 -*-  
import time, sys  
from Tkinter import *  


mydelaymin = 60 #窗口提示的延迟时间,以分钟计  
  
#------------------def-------------------  
def showMessage():  
    #show reminder message window  
    root = Tk()  #建立根窗口  
    #root.minsize(500, 200)   #定义窗口的大小  
    #root.maxsize(1000, 400)  #不过定义窗口这个功能我没有使用  
    root.withdraw()  #hide window  
    #获取屏幕的宽度和高度,并且在高度上考虑到底部的任务栏,为了是弹出的窗口在屏幕中间  
    screenwidth = root.winfo_screenwidth()  
    screenheight = root.winfo_screenheight() - 100   
    root.resizable(False,False)  #不可拖动窗口
    #添加组件  
    root.title("天呐 ಥ_ಥ ")  
    frame = Frame(root, relief=RIDGE, borderwidth=2)  
    frame.pack(fill=BOTH, expand=1) #pack() 放置组件若没有则组件不会显示  
    #窗口显示的文字、并设置字体、字号  
    label = Label(frame, text="你已经坐了一个小时啦(•̀ᴗ•́)و ̑̑ 快起来站一下~", \
        font=root)  
    label.pack(fill=BOTH, expand=1)  
    #按钮的设置  
    button = Button(frame, text="知道啦", font= root, fg="red", width=6, height=2, command=root.destroy)  
    button.pack(side=BOTTOM)  
  
    root.update_idletasks()  
    root.deiconify() #now the window size was calculated  
    root.withdraw() #hide the window again 防止窗口出现被拖动的感觉 具体原理如下 
    root.geometry('%sx%s+%s+%s' % (root.winfo_width() + 10, root.winfo_height() + 10,   
        (screenwidth - root.winfo_width())/2, (screenheight - root.winfo_height())/2))  
    root.deiconify()
    root.iconbitmap('C:\Users\A1in\Desktop\python-test\ease-remind\\t.ico')  
    root.mainloop()  
  
#showMessage()  

  
while True:  
    time.sleep(mydelaymin*60) #参数为秒  
    showMessage()  

TKinter GUI

代码用到的模块是python自带的模块TKinter, 利用该模块创建一个GUI程序的步骤如下:

  • 导入 Tkinter 模块
  • 创建控件
  • 指定这个控件的 master, 即这个控件属于哪一个
  • 告诉 GM(geometry manager) 有一个控件产生了

py2exe

每次用命令行执行命令太麻烦了, 所以想把remind.py文件转化为.exe可执行文件

  • 安装py2exe
  • 新建一个setup.py 把remind.py的绝对路径写进去
# setup.py
from distutils.core import setup
import py2exe
setup(windows=["C:\Users\A1in\Desktop\python-test\\ease-remind\\remind.py"])
  • 在命令行运行 会在当前目录生成dist和build文件夹 .exe可执行文件在dist文件夹里
python setup.py py2exe

注意在编译的时候setup的参数一定得是windows,这样编译出来的exe,就是后台运行的。


开机自启动

生成.exe文件后还是需要自己手动点击,所以我们利用以下方式形成开机自启:

  • 在->运行中输入 shell.Startup
  • 进入开机自启动的文件夹 C:\XXX\XXX\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
  • 新建一个快捷方式,快捷方式的键入对象方式地址为/dist/remind.exe的位置

补充

考虑到windows还有个任务栏,我把窗口适当靠屏幕上方显示了50像素

在计算出大小之后,如果没有隐藏而直接去改变位置,会给用户一个窗口被拖动的视觉。

没显示出窗口前,geometry manager不会真正去计算窗口大小,这也是为什么这里坑爹要先显示一下,再调整位置。

如果窗口是fix size,事情就简单许多,直接用root.geometry()方法去改变位置即可,上面的很多代码都是多余的。


每天到公司 打开电脑 就不管啦 等每个小时它提醒我起来站一下QAQ

27
Oct

emmmm

我都快忘了我还有个博客...
距离上次更新好像已经过了一年多了...
时间过得好快...
这一年里发生了很多很多有趣的事情...
有时间了慢慢更吧哈哈哈哈哈哈...
想做个改变...
也想发一点自己的学习文章...
虽然很简单很鸡肋...
还是想分享上来哈哈哈哈哈...
嘻嘻

30
Mar

“ 如果与这个世界交手多年 你是否还能光彩依旧 兴致盎然?”