blog.yuaz.net
抓取 – Imagine::Blog.new
http://blog.yuaz.net/archives/tag/抓取
You may say I'm a dreamer, but I'm not the only one. 使用 casperjs 抓取 Javascript 渲染的网页. Written by Yuan Cheung. 如果网页的内容,是Javascript生成的,那么就得分析Javascript或者分析HTTP请求,找到数据如何生成 这样做的原因是,普通的抓取工具 比如Ruby的mechanize ,只能HTTP层面上分析数据,无法运行Javascript。 在 OpenVZ 上搭建 VPN (PPTP). 抓取 USCIS H1B 申请进度. 使用 casperjs 抓取 Javascript 渲染的网页. Theme by Theme4Press • Powered by WordPress. You may say I'm a dreamer, but I'm not the only one.
blog.yuaz.net
在 OpenVZ 上搭建 VPN (PPTP) – Imagine::Blog.new
http://blog.yuaz.net/archives/471
You may say I'm a dreamer, but I'm not the only one. 在 OpenVZ 上搭建 VPN (PPTP). Written by Yuan Cheung. 感恩节后的 Black Friday ,会有很多折扣商品。 就提供了最低 2$/mon 的VPS 128MB ,年付 6.2 折。 搜了下资料,原来一般情况下,OpenVZ 需要在控制面板开启 PPP 和 TUN 后 PPTP 才可以正常工作。 进入 SolusVM Control Panel。 注意这不是从 Ramnode 网站的 Client Area 登录,而是点击 SolusVM CP 登录。 用户名和密码也和 Client Area 的不同。 在创建 VPS 后,Ramnode 会将登录地址、初始的用户名及密码通过 Email 发给用户。 在控制面板首页下方的 Settings 中,设置 TUN/TAP 为 ON,设置 PPP 也为 ON。 在开启 PPP 和 TUN 后,就可以用通用的方式安装和配置 VPN了。 可以参考这篇文章 单网卡 Ubuntu 服务器打造 PPTP Server.
blog.yuaz.net
Rails – Imagine::Blog.new
http://blog.yuaz.net/archives/tag/rails
You may say I'm a dreamer, but I'm not the only one. Written by Yuan Cheung. ActiveSupport: Dependencies: ModuleConstMissing 模块重写了 Module#const missing 方法。 Const missing 是类方法,所以应该定义在 Class 上,而 Module 是 Class 的父类。 在重写的 const missing 方法里,会根据常量名,按照路径的惯例去加载对应的文件,当找到后,就加载文件,并且把常量保存起来 常量保存在 ActiveSupport: Dependencies.autoloaded constants ,加载过的路径保存在 ActiveSupport: Dependencies.history。 当需要时,调用 ActiveSupport: Dependencies.clear 移除已经加载过的常量 可参考 http:/ blog.yuaz.net/archives/415. Unless config.cache classes ap...
blog.yuaz.net
拓扑排序与Rails初始化 – Imagine::Blog.new
http://blog.yuaz.net/archives/448
You may say I'm a dreamer, but I'm not the only one. Written by Yuan Cheung. Initializer :set load path, :before = :bootstrap hook do all load paths.reverse each do path $LOAD PATH.unshift(path) if File.directory? Path) end $LOAD PATH.uniq! 比如上面的 : set load path 得在 : bootstrap hook 之前执行。 里可以看到,这里使用了 标准库里的 TSort 来生成这种有依赖关系的排序。 TSort 的文档见 http:/ ruby-doc.org/stdlib-2.0/libdoc/tsort/rdoc/TSort.html. 使用 casperjs 抓取 Javascript 渲染的网页. 在 OpenVZ 上搭建 VPN (PPTP). 抓取 USCIS H1B 申请进度. 使用 casperjs 抓取 Javascript 渲染的网页.
blog.yuaz.net
OpenVZ – Imagine::Blog.new
http://blog.yuaz.net/archives/tag/openvz
You may say I'm a dreamer, but I'm not the only one. 在 OpenVZ 上搭建 VPN (PPTP). Written by Yuan Cheung. 感恩节后的 Black Friday ,会有很多折扣商品。 就提供了最低 2$/mon 的VPS 128MB ,年付 6.2 折。 搜了下资料,原来一般情况下,OpenVZ 需要在控制面板开启 PPP 和 TUN 后 PPTP 才可以正常工作。 进入 SolusVM Control Panel。 注意这不是从 Ramnode 网站的 Client Area 登录,而是点击 SolusVM CP 登录。 用户名和密码也和 Client Area 的不同。 在创建 VPS 后,Ramnode 会将登录地址、初始的用户名及密码通过 Email 发给用户。 在控制面板首页下方的 Settings 中,设置 TUN/TAP 为 ON,设置 PPP 也为 ON。 在开启 PPP 和 TUN 后,就可以用通用的方式安装和配置 VPN了。 可以参考这篇文章 单网卡 Ubuntu 服务器打造 PPTP Server.
blog.yuaz.net
抓取 USCIS H1B 申请进度 – Imagine::Blog.new
http://blog.yuaz.net/archives/454
You may say I'm a dreamer, but I'm not the only one. 抓取 USCIS H1B 申请进度. Written by Yuan Cheung. USCIS 受理 H1B 工作签证申请后,会返回给律师一个 13 个字符的 Receipt Number,之后可以在 USCIS 的网站 http:/ www.uscis.gov/portal/site/uscis. Receipt Number 包含了申请地点、申请年份、案件编号等信息,可以查看 Understanding H1B Case Number. 但是,我选取了100个 Receipt Number,抓取其状态,发现有大约20%的申请,在10月1日,仍然是 Request for Evidence 即 RFE 或者 Request for Evidence Response Review Decision 状态 同时也发现,在10月1日开始美国政府关门期间,有些申请的状态发生改变了。 Require 'mechanize' def fetch(receipt number) agent = Mechan...
blog.yuaz.net
九月 – 2013 – Imagine::Blog.new
http://blog.yuaz.net/archives/date/2013/09
You may say I'm a dreamer, but I'm not the only one. Monthly archives for 九月, 2013. Written by Yuan Cheung. 让 Nginx 处理后端的 404、500 等错误. Written by Yuan Cheung. Nginx 处理静态文件很快,因此使用 Nginx 做反向代理时,可以让它来处理后端的 404、500 等错误。 使用 Nginx 的 error page 命令可以配置不同 HTTP 状态码的错误页面,同时还得打开 proxy intercept errors 开关。 Http:/ wiki.nginx.org/HttpCoreModule#error page. Http:/ wiki.nginx.org/HttpProxyModule#proxy intercept errors. Written by Yuan Cheung. Written by Yuan Cheung. 在 OpenVZ 上搭建 VPN (PPTP). 抓取 USCIS H1B 申请进度.
blog.yuaz.net
未分类 – Imagine::Blog.new
http://blog.yuaz.net/archives/category/未分类
You may say I'm a dreamer, but I'm not the only one. Posts in category 未分类. Written by Yuan Cheung. 先在命令行修改 User Limit,即 limit the use of system-wide resources。 Soft nofile 65536 * hard nofile 65536. 在 OpenVZ 上搭建 VPN (PPTP). Written by Yuan Cheung. 感恩节后的 Black Friday ,会有很多折扣商品。 就提供了最低 2$/mon 的VPS 128MB ,年付 6.2 折。 搜了下资料,原来一般情况下,OpenVZ 需要在控制面板开启 PPP 和 TUN 后 PPTP 才可以正常工作。 进入 SolusVM Control Panel。 注意这不是从 Ramnode 网站的 Client Area 登录,而是点击 SolusVM CP 登录。 用户名和密码也和 Client Area 的不同。 使用 casperjs 抓取 Javascript 渲染的网页.
blog.yuaz.net
十二月 – 2013 – Imagine::Blog.new
http://blog.yuaz.net/archives/date/2013/12
You may say I'm a dreamer, but I'm not the only one. Monthly archives for 十二月, 2013. 在 OpenVZ 上搭建 VPN (PPTP). Written by Yuan Cheung. 感恩节后的 Black Friday ,会有很多折扣商品。 就提供了最低 2$/mon 的VPS 128MB ,年付 6.2 折。 搜了下资料,原来一般情况下,OpenVZ 需要在控制面板开启 PPP 和 TUN 后 PPTP 才可以正常工作。 进入 SolusVM Control Panel。 注意这不是从 Ramnode 网站的 Client Area 登录,而是点击 SolusVM CP 登录。 用户名和密码也和 Client Area 的不同。 在创建 VPS 后,Ramnode 会将登录地址、初始的用户名及密码通过 Email 发给用户。 在控制面板首页下方的 Settings 中,设置 TUN/TAP 为 ON,设置 PPP 也为 ON。 在开启 PPP 和 TUN 后,就可以用通用的方式安装和配置 VPN了。
blog.yuaz.net
Yuan Cheung – Imagine::Blog.new
http://blog.yuaz.net/archives/author/admin
You may say I'm a dreamer, but I'm not the only one. Posts by Yuan Cheung. Written by Yuan Cheung. 先在命令行修改 User Limit,即 limit the use of system-wide resources。 Soft nofile 65536 * hard nofile 65536. 在 OpenVZ 上搭建 VPN (PPTP). Written by Yuan Cheung. 感恩节后的 Black Friday ,会有很多折扣商品。 就提供了最低 2$/mon 的VPS 128MB ,年付 6.2 折。 搜了下资料,原来一般情况下,OpenVZ 需要在控制面板开启 PPP 和 TUN 后 PPTP 才可以正常工作。 进入 SolusVM Control Panel。 注意这不是从 Ramnode 网站的 Client Area 登录,而是点击 SolusVM CP 登录。 用户名和密码也和 Client Area 的不同。 Written by Yuan Cheung. Set app ...