- 博客(27)
- 资源 (13)
- 收藏
- 关注
原创 使用go语言来下载蜻蜓fm上的歌曲,效率感觉还行
package mainimport ( "encoding/json" "errors" "fmt" "net/http" "io" "os" "path" "io/ioutil" "sync")//翻唱FM的URL:http://www.qingting.fm/#/vchannels/136962/programs/5659080//翻唱FM的ajax地址:htt
2016-10-31 21:17:04 1820
原创 pip使用本地缓存文件来安装包
一般我们直接使用pip来安装网络上的包文件,如果机器没有联网,但是已经有了现成的包,应该如何呢,这个时候,可以直接使用离线包来进行安装,安装方法pip install --help中有这么几个参数--no-index和--find-links--no-index 是忽略包索引(仅仅从--find-links的链接地址中去查找包)--find-links 如果指定某个机器的连接地址
2016-10-31 10:28:35 20302
转载 Windows计划任务执行时不显示窗口的问题
最近开发了工具,带界面的,需要定时执行的,为了方便直接用Windows计划任务做定时了。跑了一段时间发现,进程中也有,就是看不到程序的界面,进程的执行貌似也阻塞了。从网上查了下,发现时启动方式的问题,原来选择的不管是否登录都要运行,导致窗口类的应用启动出现问题,设置为只在登录时启动就好了。当然服务器上的用户不能注销。
2016-10-31 10:23:22 36666 9
原创 nodejs爬取蜻蜓fm的歌曲
例子爬取蜻蜓fm上的翻唱歌曲:代码不长,可以看看/** * Created by ds on 2016/10/30. */const http = require('http')const request = require('request')const async = require('async')const util = require('util')const _ =
2016-10-30 18:34:13 2392
转载 WebStorm2016.1破解
1.从官网下载WebStorm2016.1安装。https://download.jetbrains.com/webstorm/WebStorm-2016.1.exe2.下载破解补丁并解压,记住路径 补丁下载3.编辑WebStorm安装目录下 bin 文件夹中的 WebStorm.exe.vmoptions 与 WebStorm64.exe.vmoptions 文件
2016-10-28 08:57:53 1979
转载 go接口扩展注意事项
简单地说 Interface是一组Method的组合,可以通过Interface来定义对象的一组行为。 如果某个对象实现了某个接口的所有方法,就表示它实现了该借口,无需显式地在该类型上添加接口说明。Interface是一个方法的集合,它里面没有其他类型变量,而且Method只用定义原型 不用实现①接口定义1.命名时习惯以"er"结尾,如Printer Reader Wr
2016-10-27 21:21:18 713
原创 go语言实现接口,接受者应该是传值还是传引用(传引用兼容传值)
/*go语言中给接口赋值的时候,对象如果是值(对于引用的接受者处理不了)如果是指针,则可以自动实现值的处理 */package mainimport "fmt"//定义Integer类型type Integer inttype LessAddInf interface{ Less(n Integer) bool Add(n Integer) Integer}fun
2016-10-27 20:57:22 3200 1
转载 go语言的字符和字符串
Go语言中的字符在Go语言中,没有字符类型,字符类型是rune类型,rune是int32的别称。下面用一个简单的程序来演示字符类型:package mainimport ( "fmt" "reflect")func main() { r := '我' fmt.Printf("%q的类型为:%t 二进制为:%b\n", r, r, r) rType := refl
2016-10-26 20:58:18 1236
原创 go语言Reader包封
package mainimport ( "io" "os" "strings")type rot13Reader struct { r io.Reader}//rot13将数字+13转化为字母,对该数字减13即可//通过这方方法,将其做成一个包封器(wrapper)func (this * rot13Reader)Read(bytes []byte) (n int,
2016-10-26 20:57:25 540
原创 go语言 grequests+goquery 简单爬虫,使用多协程并发爬取
/*下载工具*/package mainimport ( "fmt" //go语言版本的jquery "github.com/PuerkitoBio/goquery" "os" "sync" "strings" //go语言版本的request "github.com/levigross/grequests" "time" "strconv")var wg sync
2016-10-26 08:38:41 4316
原创 golang中协程同步sync.waitGroup
//使用golang中sync.WaitGroup来实现协程同步package mainimport ( "fmt" "net/http" "io/ioutil" "time" "os" "sync")var waitGroup = new(sync.WaitGroup)func download(i int ){ url := fmt.Sprintf("http:
2016-10-23 19:28:57 6565
原创 go语言defer的用法
//defer用来推出前延迟操作,一个函数中可以有多个//defer的执行顺序和栈的行为是一样的package mainimport "fmt"func deferTest(x int) int{ if(x==0){ return 0 } defer fmt.Printf("x=%d\n", x) //说明一个函数中可以有多个defer,defer的执行顺序跟栈的行为一
2016-10-20 21:14:14 774
原创 go语言协程认识-1
//关于go语言协程通道的使用//1.通道可以带缓存,也可以不带//2.不带缓存的,不管是读还是写都会阻塞//3.带缓存的,如果缓存溢出,就会阻塞//4.make(chan int,1)和make(chan int)是不一样的,第一种通道内写入两个数据会阻塞,第二种写入就会阻塞//5.如果协程在阻塞,但是主程已经退出执行,则认为程序死锁//6.如果程序除了主程之外(没有一个协程),处于
2016-10-20 09:35:16 1213
原创 go结构体中String接口的实现为什么是结构体而不是指针
package main//Go语言组合的思想很重,数据之间如果要传承//需要将数组组合进来//Go有指针的概念,但是并没有指针运算符import ( "fmt")const ( ANIMAL_CAT = 0 ANIMAL_MOUSE = 1 ANIMAL_DOG = 2)//go语言的接口type Animal interface { name() (strin
2016-10-19 15:17:30 1637
原创 go结构体的学习和使用
package main//Go语言组合的思想很重,数据之间如果要传承//需要将数组组合进来//Go有指针的概念,但是并没有指针运算符import ( "fmt")const ( ANIMAL_CAT = 0 ANIMAL_MOUSE = 1 ANIMAL_DOG = 2)//go语言的接口type Animal interface { name() (strin
2016-10-19 15:16:38 4324
转载 go结构体的使用
go中的struct可以实现oop中的类、方法。go语言中的struct成员可以是任何类型,如普通类型、复合类型、函数、struct、interface等。入门 //定义 type User struct { name string email string password string } //声明
2016-10-19 14:34:53 4422
转载 golang中结构体的初始化方法(new方法)
type Rect struct { x, y float64 width, height float64}初始化方法:rect1 := new(Rect)rect2 := &Rect{}rect3 := &Rect{0, 0, 100, 200}rect4 := &Rect{width:100,
2016-10-19 09:07:30 751
原创 python中的%(模)运算
模运算,用得算是比较多,但是负数的模运算还是用的比较少-1 % 8 = 71 % -8 = -7-1 % -8 = -11 % 8 = 1从上述的例子可以看出,如果模运算的算术符符号相同,则直接等于取绝对值以后,再做模运算(负数则是负),如果符号不相同其结果等于 a % b = c(a-c) %b == 0 满足这个规律
2016-10-17 21:30:52 7640
转载 AES-CBC-PKCS7Padding
#coding=utf-8import hashlibfrom Crypto.Cipher import AESimport base64class AesCrypter(object): def __init__(self, key): # self.key = hashlib.sha256(key).digest() # self.iv =
2016-10-17 21:18:12 4048
原创 nodejs的defer库Q(q)
在js中,各种回调,各种代码嵌套,导致代码风格很不好看,所以出现了流式风格的promise,promise和twisted的defer以及QT中并行库的future是一个概念,都是说明以后做什么,都是异步操作,不过QT的是多线程异步,而twisted和js都是单线程的,使用promise这样就不用把代码都写到各种回调中了,直接一个then就可以搞定了。例如一下代码风格。/* 在nodej
2016-10-13 17:15:37 4341
原创 async太好用了,用了两个小时写的代码
/* 从5442网站上把所有的热门推荐下载下来 async+cheerio+request */const util = require('util');const request = require('request');const http = require('http');const fs = require('fs');const cheerio = require('ch
2016-10-11 23:20:09 6317
原创 async中流程控制的applyEach,applyEachSeries,compose, during的用法
/*async的流程控制*/const async = require('async');const fs = require('fs');const util = require('util');//测试用例函数function showName(person, callback) { if ('name' in person) { //等待5秒以后开始执行操
2016-10-11 15:09:14 1483
原创 nodejs.async中流程控制auto,autoInject,cargo的用法
/*async的流程控制*/const async = require('async');const fs = require('fs');const util = require('util');//异步流程控制测试类function AsyncControlFlowTest() {}AsyncControlFlowTest.prototype = { //根据列出的
2016-10-11 09:18:40 2339
原创 nodejs使用asyn优化的爬取
/* 使用request + cheerio来爬取zngirls网站上的数据 */const request = require('request');const http = require('http');const fs = require('fs');const cheerio = require('cheerio');const url = require('url');
2016-10-09 20:56:13 1885
原创 nodejs使用async来进行优化
原来的爬取方式,会导致很多个连接同时访问服务器,而导致连接错误,修改为使用async的queue,保持始终只有两个处于激活的状态就不会出现这种问题了未使用async前的代码:/* 使用request + cheerio来爬取zngirls网站上的数据 */const request = require('request');const http = require('http');
2016-10-09 20:49:33 1779
原创 nodejs中使用async来对异步操作进行同步,避免多个异步同时启动引发连接错误
/* 对于nodejs中由于几乎大部分的操作都是异步的,所以我们都是通过一层层的函数来实现。 而异步也会带来一些问题,那就是同时并发过度的request,就会导致链接失败(或则连接被关闭) 如何做到既能异步操作,又能控制并发数目,asyn库应该是可以满足需要 */const url = require('url');const request = require('request');
2016-10-08 17:14:04 3638
android自动短信发送源码
2013-04-26
独立的键盘钩子,用来hook键盘的一个小程序,很值得看看
2009-12-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人