`

使用ruby备份你的blog

阅读更多
 虽然sohu不大可能倒闭,但是我也想导出我所有的文章,备份在自己的数据库中。javaeye的blog系统提供了一个blog导入导出的功能,用起来很酷。其实你自己用ruby写一下也很简单,比如我要读取我的blog的RSS源:

require 
'rss/2.0'
require 
'open-uri'
url 
= 'http://dennnis-zane.blog.sohu.com/rss'
feed 
= RSS::Parser.parse(open(url).read, false
puts 
"=== blog名称: #{feed.channel.title} ===" 
feed.items.each 
do |item| 
    puts item.title 
    puts 
" (#{item.link})"
    puts puts item.description 
end 

feed.items对应rss2.0的item元素,每个item元素描述了一篇文章的标题,链接,内容等信息,你可以通过item.title,item.link等来读取,并存入你自己的数据库。

再给一个使用代理的例子,因为我的机子是使用代理上网的:

require 'rss/2.0'
require 
'net/http'
url 
= 'http://dennnis-zane.blog.sohu.com/rss'
$proxy_addr 
= '172.16.51.10'
$proxy_port 
= 807

response 
= Net::HTTP.Proxy($proxy_addr, $proxy_port).get_response(URI.parse("http://dennnis-zane.blog.sohu.com/rss"))
feed 
= RSS::Parser.parse(response.body, false)
puts 
"=== Channel: #{Iconv.conv('GBK','UTF-8',feed.channel.title)} ==="
feed.items.each 
do |item|
  puts Iconv.conv(
'GBK','UTF-8',item.title)
  puts 
" (#{item.link})"
  puts
 # puts Iconv.conv(
'GBK','UTF-8',item.description)
end


打印:

=== Channel: 花非花 ===
websphere错误备忘录
 (http://dennnis-zane.blog.sohu.com/29898836.html)

感冒,寒冷的夜
 (http://dennnis-zane.blog.sohu.com/29859082.html)

ECMAScript对象基础
 (http://dennnis-zane.blog.sohu.com/29499101.html)

用ruby创建领域特定语言(DSL)——转载
 (http://dennnis-zane.blog.sohu.com/29350052.html)

使用ruby解析json
 (http://dennnis-zane.blog.sohu.com/29200192.html)

ruby实现抽象类和抽象方法
 (http://dennnis-zane.blog.sohu.com/29145303.html)

看了《父子》,看了《绿帽子》
 (http://dennnis-zane.blog.sohu.com/29047444.html)

ECMAScript基础
 (http://dennnis-zane.blog.sohu.com/28876856.html)

假期结束,专心工作
 (http://dennnis-zane.blog.sohu.com/28604494.html)

不解
 (http://dennnis-zane.blog.sohu.com/27564529.html)
分享到:
评论

相关推荐

    yangbinfx的博客文章-ruby部分备份

    在yangbinfx的博客文章中,我们可以看到一系列关于Ruby和Rails框架的知识点,以下是其中的一些主要内容: 1. **Rails中使用jQuery**:Rails 3开始,默认引入了jQuery库,使得在Web应用中进行DOM操作和事件处理变得...

    Ruby-Publify一个构建在Rails之上的自我托管We发布平台

    Ruby-Publify是一个开源的、基于Ruby on Rails的内容管理系统(CMS),它允许用户创建和管理自己的博客或网站,无需依赖第三方服务。作为自我托管的解决方案,Publify为用户提供对数据的完全控制,同时提供了丰富的...

    website:我的网站是使用Serious(Ruby博客)构建的,并在Git中备份并部署到了Heroku

    现在,我开始使用Ruby和Sinatra并与Heroku一起部署。 我发现这要容易得多,因为它遵循了我日常所用的相同方法。 如果您对入门有任何疑问,请随时与我们联系。 安装 git clone ...

    sqlite3-ruby:SQLite3嵌入式数据库的Ruby绑定

    `sqlite3-ruby`是Ruby编程语言中用于与SQLite3嵌入式数据库进行交互的库。这个库提供了方便的API,让...通过学习和使用`sqlite3-ruby`,开发者可以更好地理解和利用SQLite3数据库的特性,从而提升应用的效率和可靠性。

    arch.blog:博客原始码备份

    【arch.blog:博客原始码备份】是一个与系统开源相关的压缩包文件,主要包含了一个名为"arch.blog-master"的子文件夹。这个文件很可能是某个基于开源技术构建的个人博客的源代码备份。在这个项目中,我们可以探究到...

    个人博客.zip

    这个压缩文件可能包含了网页设计、文章内容、图片资源、样式表(CSS)、脚本(JavaScript)等多个方面,帮助用户方便地备份、转移或分享他们的博客内容。 在个人博客的构建过程中,以下是一些重要的知识点: 1. **...

    20140402myBlog

    在这个特定的场景下,"myBlog"可能代表个人博客的名称,暗示了这个压缩包可能包含了与个人博客相关的源代码、内容、配置文件或者是备份数据。 【描述】中的信息同样简洁,仅复述了标题,这可能意味着具体细节需要...

    ghost-backup:备份幽灵博客

    备份博客数据。 这有两件事: 下载Ghost Post数据库的JSON导出 复制幻影内容目录(图像资产等) 第2部分仅运行 安装 gem install ghost-backup 用法 设定档 第一步是生成ghost-backup.yml : $> ghost-backup ...

    safe:将 mysql、posgresql、svn 和文件简单备份到 s3 或本地文件系统

    博客: : 动机 我们需要一个能够满足以下要求的备份解决方案: 开源 安装和配置简单 支持目录的简单“tar”备份(包含/排除) 支持mysql数据库的简单mysqldump 支持对称或公钥加密 支持本地文件系统、Amazon S3 ...

    [博客空间]Nbs博客系统 v1.0_nbs.zip

    1. **博客系统架构**:Nbs博客系统可能基于Web应用程序框架(如Django, Flask或Ruby on Rails)构建,采用MVC(模型-视图-控制器)设计模式,使得代码结构清晰,易于维护和扩展。前端可能使用HTML5、CSS3和...

    博客系统 blog

    在实际开发中,博客系统可能使用各种技术栈,如前后端分离架构,前端采用React、Vue.js等库,后端使用Node.js、Django、Ruby on Rails等框架,数据库选择MySQL、PostgreSQL或MongoDB等。此外,还可以利用云服务(如...

    blogBK:博客原始码备份

    【博客原始码备份:深入解析开源系统】 在IT行业中,博客不仅是一种个人表达观点和分享技术的方式,也是开源文化的重要体现。"blogBK:博客原始码备份" 提供的是一份博客系统的源代码备份,这使得我们可以深入了解...

    博客系统2 blog

    11. **服务器端技术**:后端开发通常使用 PHP、Python、Node.js 或 Ruby 等语言,配合框架如 Laravel、Django、Express 或 Rails 实现服务端逻辑。 12. **前端技术**:前端开发主要涉及 HTML、CSS 和 JavaScript,...

    RoR中文解决方案(很不错哦)

    虽然具体的链接无法直接访问,但通常这样的博客文章会提供详细的步骤、代码示例或技巧,帮助开发者理解和使用提供的文件。 在压缩包的文件名称列表中,“books.sql”可能是一个数据库备份文件,其中包含了书籍相关...

    my_blog:https

    总之,"my_blog:https"是一个使用Ruby构建的个人博客项目,可能基于Jekyll或Middleman,强调了HTTPS的安全性。理解并掌握Ruby、静态站点生成器的使用以及HTTPS的配置,是进一步探索这个项目的关键。

    blog-src

    7. **数据库脚本**:如果博客使用数据库存储文章,可能包含SQL脚本用于数据导入或备份。 8. **构建脚本和工具**:如Grunt、Gulp或Webpack,用于自动化构建过程,如压缩、合并和优化资源。 9. **服务器端代码**:如果...

    rubyrails生态系统

    此外,也有许多博客和杂志提供最新的开发技巧和最佳实践。 #### 实施活动 实施 Rails 应用涉及多个步骤,包括选择合适的数据库、设置开发环境、编写代码和测试等。合理规划这些步骤可以确保项目的顺利进行。 ####...

    一个在线博客系统(自己写的)

    而后端则处理数据、业务逻辑和服务器交互,常用的技术栈可能包括PHP、Python、Ruby、Java或Node.js等服务器端编程语言,搭配数据库管理系统如MySQL、PostgreSQL或MongoDB存储和检索博客内容。 在“自己做的博客系统...

    媒体博客网站

    2. 使用现成CMS:WordPress、Joomla、Drupal等开源CMS提供丰富的插件和主题,可快速搭建博客,但可能需要进行二次开发以满足特定需求。 四、多媒体支持 1. 图片和视频处理:利用Cloudinary、Imgix等服务进行图片...

Global site tag (gtag.js) - Google Analytics