ruby+nokogori抓取糗事百科前10页并存储进数据库示例

所属分类: 脚本专栏 / ruby专题 阅读数: 2044
收藏 0 赞 0 分享

ruby,nokogori,爬取糗事百科最新的10页加图片比并同时保存进文本跟数据库

复制代码 代码如下:

#encoding:utf-8
require "open-uri"
require "nokogiri"
require "mysql"
@dbh=Mysql.real_connect("localhost","root","dengli","pachong")
@file=open("qb.txt","w")
def getQiubai(url)
  data=open(url){|f| f.read}
  doc=Nokogiri::HTML(data)
  doc.css('div.block.untagged.mb15.bs2').each{|p|
    content=p.css('div.content').text
    @file.puts("#{content}\n")
    img=p.css('div.thumb img').each{|img|
       imgAddr=img.attr('src')
       @file.puts("#{imgAddr}\n")
       time=Time.now
       sql="INSERT INTO qiushibaike (`body`,`img`,`time`) VALUES ('#{content}','#{imgAddr}','#{time}')"
       @dbh.query(sql)
       }
  }
end
for i in 1..10
  @file.puts("这是第#{i}页")
  url="http://www.qiushibaike.com/8hr/page/#{i}"
  getQiubai(url)
end

更多精彩内容其他人还在看

解析 ruby 全局变量

解析 ruby 全局变量
收藏 0 赞 0 分享

ruby 实变量

ruby 实变量
收藏 0 赞 0 分享

ruby 局部变量

ruby 局部变量
收藏 0 赞 0 分享

ruby 类常量 解析

ruby 类常量 解析
收藏 0 赞 0 分享

ruby 异常处理:rescue

ruby 异常处理:rescue
收藏 0 赞 0 分享

ruby 异常处理:ensure

ruby 异常处理:ensure
收藏 0 赞 0 分享

ruby 存取器 概念

ruby 存取器 概念
收藏 0 赞 0 分享

ruby 对象的初始化 方法

ruby 对象的初始化 方法
收藏 0 赞 0 分享

ruby 杂项

ruby 杂项
收藏 0 赞 0 分享

初步了解一下什么是ruby

了解下什么是ruby,希望学习ruby的朋友了解下
收藏 0 赞 0 分享
查看更多