自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

davidsu33的专栏

To be or not to be, It's a problem!!!

  • 博客(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语言的学习教程地址,可以直接down到本地使用

https://tour.go-zh.org/welcome/1

2016-10-19 17:18:33 546

原创 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

python编写的汽车之家爬虫

自动下载汽车之家资源,并使用json进行解析出完整数据列表。

2015-02-14

QT的WebKitDemo

1.用QT编写的访问天气的代码 2.用QT编写的HTML脚本

2014-10-15

nsis编译2012版本

nsis编译2012版本

2014-09-12

nsis-vs2010编译通过的安装包程序

nsis-vs2010编译通过的安装包程序,我折腾了很长时间才编译通过,喜欢的同学可以研究一下

2014-09-12

testplusplus

plusplus语法解析和qt-creator-opensource-src-3.1.0使用,很不错的东西,我研究了qtcreator的源码

2014-08-27

com初学demo

一个客户端例子,一个服务端的例子,算是入门的demo吧,大家可以看看

2014-08-13

openGL图形变换和裁剪

openGL图形变换和裁剪,矩阵的使用以及基本的用法。

2013-10-21

visual asssistant

Visual Assistant 支持VS2008和VS2010,是程序猿的必备工具

2013-06-05

android4.2.2src.zip

在网上找了老半天才找到~,费劲,需要的朋友请下载。

2013-05-13

android自动短信发送源码

用来学习短信模块的绝佳代码! public class ListAdapter extends BaseAdapter { private LayoutInflater mInflater; private List<Map<String, Object>> mData; public static Map<Integer, Boolean> isSelected; SMSINFODao smsinfodao; public ListAdapter(Context context) { mInflater = LayoutInflater.from(context); init(context); } //初始化 private void init(Context context) { mData=new ArrayList<Map<String, Object>>(); smsinfodao = new SMSINFODao(context); Cursor cursor = smsinfodao.select(); while (cursor.moveToNext()) { Map<String, Object> map = new HashMap<String, Object>(); map.put("img", android.R.drawable.ic_dialog_email); map.put("pn", cursor.getString(0)); map.put("title", cursor.getString(1)); map.put("body", cursor.getString(2)); mData.add(map); }

2013-04-26

Windows环境下实现原始UDP数据包发送

在Windows上实现原始UDP数据的通信,这是一个很实用的例子,喜欢的朋友可以好好看看

2011-10-16

矩阵的算法课件-对于学习OpenGL的朋友来说值得一看

对于学习OpenGL的朋友来说,复习线性代数应该是很有必要的,这里就有matrix的一套课件,值得参考一下

2010-03-23

独立的键盘钩子,用来hook键盘的一个小程序,很值得看看

这个程序是用来hook键盘的,而且是一个全局hook,但是程序并没有用全局的,所以是个不错的程序,这个程序是在console台下运行的,你也可以改写该代码

2009-12-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除