本站木有非理性广告和有害内容,请大度地将本站加入广告屏蔽白名单吧~~~ ::博客文章推荐::

 分类:: 原创作品

12306订票客户端 FOR .NET 演示项目 【2】准备工具

2.1 前言 其实要做一个12306的软件版客户端,其核心奥义就是抓住重点扔掉花里胡哨的东东。抓住重点说的就是相关的API接口,花里胡哨的东西说的就是图片啊样式啊之类的东东,对于WEB来说它们是必不可少的,但是对于软件版来说这些则是累赘的东西。 由于一个WEB网站中占用体积大头的往往都是些静态的不会动的无生命物种,因此去掉这些东东既可以提高操作速度也可以减轻服务器的负载需求。虽然大型的网站都有CDN了,但是带宽也是要成本的是不是?虽然这成本和咱并没有什么关系。 既然要用软件去实现WEB接口并实现整个流程,那么在林林总总的HTTP请求中准确地找到相关的请求并正确的识别出请求内部的各个参数就很重要了。 2.2 请求跟踪 一般而言,识别请求是个经验活,而识别请求内容并判断响应内容则是个运气活了…...

木魚 9年前 (2015-05-22) 9442℃ 7评论 14喜欢

12306订票客户端 FOR .NET 演示项目 【1】项目概况

本项目是由木鱼发起的一个基于.NET4.5的12306订票客户端。项目使用C#语言,使用FSLib.Network项目作为网络层访问库,主要用于演示目的。 主要原因是因为很多同学希望能借由12306练手,以此打开通往网络编程的大门……选择12306不是没有原因的,因为其复杂多变,又有错综复杂的逻辑关系,又十分具有现实意义,嗯。 12306订票助手.NET的代码由于历史和功能的原因,其体系过于庞大,并不适合(且目前也不能)开放源码。因此重新单独启动这个简单的项目,希望能给予想学习网络编程的同学以帮助。 实现目标 本项目仅包含基本的12306功能实现: 登录 查询 提交订单 更详细进阶的功能将会在之后视情况是否加入。 技术概述 本项目出于演示&练习目的,所以将会使用较新的平台、工具以...

木魚 9年前 (2015-05-19) 8274℃ 4评论 20喜欢

通用包处理工具v3 3.7.0.0更新

通用包处理工具其实是一个烂尾的项目。若干年前我想用它来处理很多格式,后来由于需求不足也没那么多时间,就渐渐忘记了。前些日子有朋友解包QQ7.2的文件时出现问题,于是在时隔三年后更新了一次。 后来一群朋友在我的QQ空间刷屏请求GMD编辑器加上更完整的编辑操作,答应了,原计划是定在周日之前完成的,但现实永远是残忍的,时间很明显算叉了…… 于是现在才更新。 变更记录 更新GMD编辑插件,支持右键/快捷键操作,支持对当前文件的节点增删改,支持拖放操作 截图说明 右键可有菜单操作,同时支持快捷键。 支持拖放操作。 支持新增节点。 下载。 发布官网:http://www.fishlee.net/soft/upb3/ 本版本直接下载地址:http://www.fishlee.net/servi...

木魚 9年前 (2015-05-17) 3332℃ 5评论 4喜欢

12306订票助手.NET 7.22.0.0 发布

7.22.0.0 概述 7.22 是一个功能性稳定更新。 变更详情 增加登录冲突的提示 微调登录流程 修复拒绝显示推广但依然会显示的bug 发布地址 发布主页:http://www.fishlee.net/soft/12306/ 论坛地址:http://bbs.fishlee.net/ 本版本下载地址:http://www.fishlee.net/service/download/579/ 购票提示 推荐的操作:开启CDN加速,多次重复登录以便于使用不同的CDN节点,效果比一次登录开多标签好 如果你要购票的车站是过路站,请尽量往前往后看几站,买到大站以及通票。越是中间的过路站有票的概率越低 随时关注。切记不是预售期最后一天的票不是按整点放的(很奇怪的,很多人都以为不管哪天的票都是按...

木魚 9年前 (2015-05-15) 2466℃ 0评论 3喜欢

原创FSLib.Network库发布 1.4 版

1.4版变更 本版本主要变动如下。 创建支持创建为 JObject 对象; 新增自动检测BOM头的选项,默认开启; 增加 ExceptionStatus 属性; ResponseFileContent 增加成功标记位 当使用代理服务器且需要验证时,提前设置验证信息以避免407响应; 修正针对单请求的UserAgent设置无效 其它细节调整 本版本暂无破坏性变更。 附议 本版本包含有部分空类,为预留之后开发使用,暂时可无视。 其它详细信息参见之前的相关文章。   ...

木魚 9年前 (2015-05-08) 5869℃ 6评论 2喜欢

.NET应用程序快速自动升级类库 SimpleUpdater 更新 4.0.0 版

SimpleUpdater for .NET 是一个适用于.NET的快速自动更新类库,用于快速地为现有的.NET应用程序添加上自动更新功能。 功能特点: 简单易用 支持增量更新等大量更新选项 更新详情 【客户端】增加自定义引用接口 IUpdateNotify 以及 UsingAssembly() 函数,可在正式更新后依然调用自己的处理事件 【客户端】增加 UsingFormUI() 函数以及更新对话框基类,可以使用自己的更新界面完全替换内置界面 【客户端】修改WebClient初始化流程,避免后续下载包时发出的请求没有UserAgent标头 【客户端】修正丢失的资源文件,避免导致命令行版无法使用 【客户端】变更config文件配置 【客户端】安装文件各操作中也支持报告进度 新增加的功...

木魚 9年前 (2015-05-07) 8854℃ 2评论 0喜欢

.NET应用程序快速自动升级类库 SimpleUpdater 更新 3.3.0.0 版

类库概述 SimpleUpdater for .NET 是一个适用于.NET的快速自动更新类库,用于快速地为现有的.NET应用程序添加上自动更新功能。 功能特点: 简单易用 支持增量更新等大量更新选项 更新详情 【客户端】修正在根目录下更新会导致出错的BUG 【客户端】修正当更新信息设置为显示网页时有时可能会报ActiveX初始化异常的BUG 【包工具】修正当输入最小版本号不正确时没做检查导致客户端出错的BUG 安装方式 以下安装方式任选其一即可: (推荐) 使用Nuget包管理器,搜索“iFish” 后找到 “iFish's Simple Application Updater Library”(fishlee.net.simpleupdater) 并安装即可。包中不包含...

木魚 9年前 (2015-04-28) 4478℃ 1评论 2喜欢

放一个抓取网页的信息监控小工具源码

这个工具是受一个朋友所托写的,简单来说就是在多个信息网站上抓取列表内容,取到最新的内容后,符合要求的给予提示(比如桌面右下角弹窗)。 这是一个比较简单的工具,所以把源码放出来,也算是基于FSLIB.NETWORK的一个实例DEMO。 1.项目简单信息 开发工具:VisualStudio 2015 CTP6 开发语言:C# 目标Framework:4.0 项目类型:WinForm 运行平台:AnyCPU 2.部分技术细节信息 基本结构为主窗口+后台长轮询任务+基于接口的插件式开发 契约管理导入:MEF 后台长轮询任务:Task模式 HTML解析:HtmlAgilityPack+XPath 网络层:FSLib.Network 3.源码下载 4.交流讨论   ...

木魚 9年前 (2015-04-27) 15132℃ 7评论 13喜欢

壁纸分辨率调整工具 2.0.0.0 发布

简介 壁纸分辨率调整工具是一个古老的工具了。当初写这个工具的动机就是能简单快捷地将找到的图片调整为适合自己电脑桌面分辨率的图片。 相比其它很多软件工具,特点就是简单明了了,另外就是可以始终保持比例,不会变形(必要的时候会修剪)。 蛮久没动这个了,今天准备来调整一批前些日子拍的照片做壁纸的,便又想起了这货。于是时隔三年后更新了一些东西,发布个新版本吧。 更新说明 配置保存模式重写 自动记录使用过的分辨率 支持设置JPG质量 支持将分辨率追加到文件名中 其它细节更改和BUG修正 下载&官网 直接下载地址 http://www.fishlee.net/service/download/566/  发布官网 http://www.fishlee.net/soft/13/ 软件运行需...

木魚 9年前 (2015-04-01) 3690℃ 2评论 4喜欢

.NET应用程序快速自动升级类库 SimpleUpdater 更新 3.2.1.0 版

类库概述 SimpleUpdater for .NET 是一个适用于.NET的快速自动更新类库,用于快速地为现有的.NET应用程序添加上自动更新功能。 功能特点: 简单易用 支持增量更新等大量更新选项 更新详情 打包工具变更文件名编码,避免不同语言版本系统上文件名出现乱码 安装方式 以下安装方式任选其一即可: (推荐) 使用Nuget包管理器,搜索“iFish” 后找到 “iFish's Simple Application Updater Library”(fishlee.net.simpleupdater) 并安装即可。包中不包含文档,如果您需要文档和手册,请下载完整包。 可以通过下载完整包后引用相关的文件(客户端目录下),推荐引用DLL。EXE模式不推荐,仅推荐其用作...

木魚 9年前 (2015-02-07) 3524℃ 2评论 1喜欢

12306订票助手.NET 7.19.1.3617 发布

7.19.1.3617概述 7.19.1是一个功能性稳定更新。 变更详情 修复普客图标显示错误的BUG 修复部分高铁被误认为临客的BUG 发布地址 发布主页:http://www.fishlee.net/soft/12306/ 论坛地址:http://bbs.fishlee.net/ 本版本下载地址:http://www.fishlee.net/service/download/554/ 购票提示 推荐的操作:开启CDN加速,多次重复登录以便于使用不同的CDN节点,效果比一次登录开多标签好 如果你要购票的车站是过路站,请尽量往前往后看几站,买到大站以及通票。越是中间的过路站有票的概率越低 随时关注。切记不是预售期最后一天的票不是按整点放的(很奇怪的,很多人都以为不管哪天的票都是按整...

木魚 9年前 (2015-02-07) 2649℃ 0评论 1喜欢

12306订票助手.NET 7.18.15033.3579 发布

7.18.15033.3579概述 7.18是一个功能性稳定更新,优化了当12306封锁IP情况下的访问稳定性,修复了部分BUG,改进了部分代购模式的权限。 变更详情 启动时增加快速修复模式(当12306访问出现网络繁忙时自动触发) 移除12306动态通知(更新巨慢还不知道说的什么) 导出互助信息文件增加新的权限选项:隐藏历史订单,不赋予查看订单权限时,仅可查看未付款订单或无法查看订单 增加临客类型图标 修复多线程偶尔会出现的服务器节点模块异常 如果已使用远程打码插件,则会升级远程打码插件到2.0.0.5 其它已知问题的修正以及界面调整 发布地址 发布主页:http://www.fishlee.net/soft/12306/ 论坛地址:http://bbs.fishlee.net/ 本...

木魚 9年前 (2015-02-02) 4148℃ 7评论 1喜欢

12306订票助手.NET 7.17.15022.3490发布

7.17.15022.3490概述 7.17是一个功能性稳定更新,针对403错误过多、查询失败率较高的情况做了一些改进(客户端改进,服务器的问题无法避免,只是做了一些建议)。 变更详情 变更CDN测速算法,结果获取改进为渐进式(即使测速没有完成,也可使用已完成测速的部分进行加速) 测速逻辑变更:对于已知大量失败的节点跳过测速,提高速度 IP被封检测:连续403错误(IP可能被封)时,给出操作建议 查票中的各种返回错误情况给出具体操作建议 其它细节修改和稳定性修改 发布地址 发布主页:http://www.fishlee.net/soft/12306/ 论坛地址:http://bbs.fishlee.net/ 本版本下载地址:http://www.fishlee.net/service/...

木魚 9年前 (2015-01-22) 5581℃ 17评论 6喜欢

分享之前在GDG分享Chrome扩展(12306订票助手)一些关键点的文稿

之前曾经有幸参与了一次GDG在北京的分享活动,做了一个小的分享,关于Chrome浏览器上扩展开发(含Firefox上UserScript)中一些比较细微的点的分享。话说那次感觉有点白目,因为去的人基本上都是冲着谷歌的新技术比如谷歌眼镜去的,所以好瞎的感觉。毕竟不是HTML5峰会那种比较有主旨的东西,谷歌搞的摊子太大了。。 用的是12306订票助手做例子,其实12306订票助手从其本身使用的技术而言并不算多牛叉的东西,纯粹是一些前端技术,所以这个文档中涉及到了比较多的细微的点。这些点在开发大多数具有嵌入式脚本的扩展中均有可能用到。当然,订票助手扩展版的源代码在GITHUB上早已停止更新,但这个脚本中使用到的一些技术作为基础东西可以沿用到其它的扩展中。 昨天整理资料的时候看到了当时是用的演示文稿...

木魚 9年前 (2015-01-20) 5794℃ 5评论 7喜欢

FSLib.Network网络库使用教程[1] 基本使用

上一篇对FSLib.Network库进行了简单的介绍和演示。从本篇开始介绍相关的使用。 1.基本运行机制介绍 FSLib.Network.Http 命名空间下的类是本网络库中用于HTTP处理的相关类型集中存放的地方。由于类库是基于HttpWebRequest以及HttpWebResponse的,所以很多行为表现和逻辑和它们几乎保持一致。 在此基础之上,本类库进行了抽象和总结,并提炼出一整套流程和运行框架。以下分别介绍。 2.相关模型介绍 2.1 HttpClient HttpClient是开始HTTP处理请求的工厂。它是用来维护、创建、跟踪HTTP请求的一个基本类。可以理解为它是一个容器,维护了所有的Cookies以及全局设置,然后通过它可以创建出不同的HTTP请求实例。 HttpClie...

木魚 9年前 (2015-01-19) 67804℃ 24评论 7喜欢

原创FSLib.Network库(目前专注于HTTP的高性能高易用性网络库)

0.背景 开始在设计订票助手.NET的时候,我就在策划写一个比较易用的HTTP客户端库来完成底层的操作。由于.NET原生的HttpWebRequest比较复杂难用,而内置的WebClient先天不足。 .NET 4.5中新增了HttpClient,但可惜.NET4.0不支持XP,所以暂时只能放弃HttpClient了。在这种种背景之下,我花了很长的时间来打磨这个网络库。虽然起名叫Network,但是目前专注于HTTP库。 这个网络库在订票助手.NET中得到了广泛全面的使用,几乎所有对12306发出的请求都是由它发出的。在订票助手.NET中,最近四个月中,由它发出的请求过亿,其稳定性也是蛮有保证的嘛。 1.功能特点&运行需求 其实它是对HttpWebRequest/HttpWebRe...

木魚 9年前 (2015-01-18) 36359℃ 69评论 26喜欢

正式发布开源的扩展方法库FSLib.Extension (.NET3.5/4/4.5)

其实这个扩展方法库已经发布有段时间了,没有正式发布过。今天整理了一下文档,顺便搞个文档,正式发布吧。 简介 .NET在3.5开始引入的编译器支持扩展方法,允许为现有的对象类型在不改变其原本定义的情况下添加额外的方法。 因此便有了本扩展方法库。本扩展方法库基本上扩展的都是.NET原有的对象,尤其是String对象。 添加本扩展方法库的引用库后,一般不需要特定声明即可使用,大多为现有对象的快捷操作。 安装方法 你有三种方式可以使用本库: 直接使用包管理器(Nuget Package Manager)安装(推荐) 直接下载已编译的二进制包,并根据需要引用 使用源码自行编译 1.直接使用包管理器(Nuget Package Manager)安装 在Visual Studio中,打开Nuget包管...

木魚 9年前 (2015-01-15) 5406℃ 13评论 1喜欢

IL SPY 中文版 2.1.0.1603发布

ILSpy 是一个开源的.NET反编译工具,简洁强大易用是它的特征。在绝大多数情况下,它都能很好的完成你对未知程序集内部代码的探索。  中文版与英文版相比,存在以下不同: 所有的对话框、菜单和提示均已中文化 预置了调试插件,支持在ILSpy中无源代码直接调试程序集 调整主程序编译平台为X86,以在64位系统中调试 介绍、下载、更新历史,请参见发布页 http://www.fishlee.net/soft/ilspy_chs/ 本日志备份自 QQ 空间,原文地址:http://user.qzone.qq.com/286495995/blog/1392474920。 ...

木魚 10年前 (2014-02-15) 3625℃ 3评论 0喜欢

SCM Manager 简体中文版 1.35 发布

 SCM Manager 是一款同时支持Git、Subversion、Mercurial的源代码管理服务器,基于Java构建。 中文版由木鱼制作,除了进行全面的中文化以外,还提供了配置脚本、预置了插件并进行了插件的中文化,以及安装说明。 SCM Manager 是一款同时支持Git、Subversion、Mercurial的源代码管理服务器,基于Java构建。相对于其他源码管理服务器,它具有如下优势(基于官方介绍): 安装简单  无需手动配置,从web界面即可进行配置 无需任何WEB服务器和数据库支持 支持用户、用户组和权限控制 脱离第三方软件支持Git、Mercurial和Subversion 全REST客户端API 友好的用户界面和简单的插件API 很多插件...

木魚 10年前 (2014-02-10) 4422℃ 4评论 0喜欢

12306防封锁自动换IP工具 1.2.0.0

12306订票助手系列软件之 【12306服务器IP自动切换工具】 ================================================================ 12306服务器IP自动切换工具,使用基于云端共享的服务器IP列表,并通 过不断检测服务器当前状态,从而实现避免IP被服务器封杀较长时间。 当本机IP被服务器暂时封锁后,10秒钟内程序将会作出反应,并自动查询 下一个速度较快的可用服务器IP,并自动切换,从而避免因IP被封锁导致 订票中断。     ================================================================ 【更新说明】版本:1.2.0.0,更新日期:2...

木魚 11年前 (2013-05-13) 4377℃ 4评论 1喜欢

SCM Manager 1.30 简体中文版

SCM Manager 是一款同时支持Git、Subversion、Mercurial的源代码管理服务器,基于Java构建。相对于其他源码管理服务器,它具有如下优势(基于官方介绍): 安装简单 无需手动配置,从web界面即可进行配置 无需任何WEB服务器和数据库支持 支持用户、用户组和权限控制 脱离第三方软件支持Git、Mercurial和Subversion 全REST客户端API 友好的用户界面和简单的插件API 很多插件可用 BSD授权   本中文版基于最新版(1.30版,2013-04-12日发布)进行制作。相对于原版,做了如下修改: 全中文界面化 预置有用的插件,并将所有的插件中文化 预置了Mercurial库,不需要再次安装 进行了参数的默认配置 提供了命...

木魚 11年前 (2013-05-09) 3039℃ 1评论 0喜欢

12306.CN 购票助手 V3.0.0.0 发布

12306.CN 购票助手是运行在Chrome或Firefox浏览器之上的、提供对铁道部订票网站辅助查询订票用的助手软件。 V3.0.0.0全新发布,修复之前的BUG、功能缺陷基础之上,新引入车次黑名单、自动进入预定、自定义查询时间段等新功能。 新功能预览: 详细介绍和下载以及使用说明,请参考助手主页: http://www.fishlee.net/soft/44/ (不好意思楼主真的很懒,实在不想打字了……) 本日志备份自 QQ 空间,原文地址:http://user.qzone.qq.com/286495995/blog/1345373260。 ...

木魚 11年前 (2012-08-18) 2297℃ 0评论 0喜欢

[发布] .Net 小型软件自动更新库 V2.0.0.1

在发布应用程序时,我们经常会需要给自己的程序加上自动升级功能。.Net Framework自带的ClickOnce中有自动升级的功能,但是往往不太好用,比如必须用ClickOnce发布,安装的文件夹一个版本一个等等,我们会想要一个比较简单、甚至绿色软件也能使用的自动升级功能,这个自动升级程序就是基于这个目的而制作的。   为了让使用起来更加简单快捷,我对内置的功能进行了大幅度的精简和集成,最简单的情况下只需要你只需要一行代码即可实现自动更新。 功能支持: 多种调用方式,支持引用自动升级客户端进行调用,或使用命令行进行调用; 调用简单,最简单的情况下一行代码完成自动更新; 全自动化的流程,自动下载,自动校验升级包,自动结束正在运行...

木魚 11年前 (2012-08-09) 2628℃ 1评论 0喜欢

Q+壁纸下载工具

腾讯的Q+上有很多壁纸,有些看着还是蛮不错的。那么,这个工具就可以帮你把那些壁纸全部都拖下来慢慢挑 ^_^ 腾讯的Q+相信各位看客都知道是啥。它有个自己的桌面系统,同时呢,这个桌面系统有自己的壁纸库。 上回宝宝在微博里说有张壁纸很好看。所以我随便扫了一下……发现有些壁纸确实还不错。但是呢,我从来不用Q+(至少不会开着它的桌面),所以就琢磨着把它的壁纸全部弄到本地。   SO,这个工具便光荣地诞生鸟。   工具的功能很简单,就是将Q+所有的壁纸全都下载到本地并分类存放。支持增量下载(随时可以重复运行,已下载的不会再下载)。 下载过程截图如下: 下载的文件夹截图:  PS。 由于我很懒(我很懒么……的确非常懒……),所以这个工具用的是命令行窗口……所以请看下...

木魚 12年前 (2012-02-25) 3348℃ 9评论 0喜欢

12306.cn 网络购票助手

一个下午加一个晚上全在忙这个东西……     简介 现在放出来也许有点晚了,但是对于赶年前一两天以及回程票的同学还是有点用的,所以还是放出来吧 🙂   不是原创,借鉴了不少别人的思想和思路,但代码基本上都是重写的。目前实现的功能有: 记录登录的用户名和密码,在打开登录页面后自动填写; 自动登录,遇到人过多或繁忙的时候自动重试,直到登录成功(有点儿抢线的味道); 自动记录查询信息,一次查询线路后下次再查询自动填入; 自动刷新查询,当没有需要的车次时,自动重新刷新; 支持 Firefox + Scriptish 或 Chromium。 在 Chrome下,查票和登录有右下角提示和声音提示;Firefox下暂不支持声音提示,但有桌面弹窗提示。 运...

木魚 12年前 (2012-01-08) 4078℃ 10评论 0喜欢