首页 > 编程语言 >用 Ruby 的 Nokogiri 库抓取全国企业信用信息

用 Ruby 的 Nokogiri 库抓取全国企业信用信息

时间:2023-11-09 12:04:42浏览次数:38  
标签:URL ip 抓取 爬虫 Nokogiri 地址 服务器 Ruby

以下是一个使用 Ruby 的 Nokogiri 库编写的爬虫程序,用于爬取全国企业信用信息抓取网站上的内容。这个程序使用了一个爬虫ip服务器,爬虫ip服务器的地址是 duoip:8000

用 Ruby 的 Nokogiri 库抓取全国企业信用信息_HTML

require 'nokogiri'
require 'open-uri'

# 定义一个爬虫ip服务器
proxy_host = 'duoip'
proxy_port = 8000

# 定义要爬取的 URL
url = 'gsxt.gov/cn/index.html'

# 使用 open-uri 库打开 URL 并获取网页内容,使用爬虫ip服务器
doc = Nokogiri::HTML(open(url, proxy: {http: "#{proxy_host}:#{proxy_port}"})

# 找到网页中所有的企业信息
companies = doc.css('div.item')

# 遍历每一个企业信息
companies.each do |company|
  # 获取企业名称
  name = company.css('.name').text

  # 获取企业地址
  address = company.css('.address').text

  # 输出企业名称和地址
  puts "#{name},#{address}"
end

以下是每行代码的解释:

  • 第 1 行:导入了 Nokogiri 和 open-uri 库。Nokogiri 是一个非常强大的 Ruby 库,用于解析 HTML 和 XML 文件。open-uri 是一个用于打开 URL 的 Ruby 库。
  • 第 3 行:定义了爬虫ip服务器的地址。这个地址是一个 HTTP 爬虫ip服务器,它用于隐藏你的真实 IP 地址,从而避免被网站屏蔽。
  • 第 4 行:定义了要爬取的 URL。在这个例子中,我们想要爬取全国企业信用信息抓取网站的首页。
  • 第 6 行:使用 Nokogiri 库打开 URL 并获取网页内容。同时,我们指定了使用爬虫ip服务器。
  • 第 8 行:使用 CSS 选择器找到了网页中所有的企业信息。这些信息都是在一个名为 div.item 的 HTML 元素中。
  • 第 10 行:遍历每一个企业信息。
  • 第 11 行:获取了企业的名称。
  • 第 12 行:获取了企业的地址。
  • 第 13 行:输出了企业的名称和地址。

注意:这个程序只是一个基本的示例,实际的爬虫程序可能需要更复杂的功能,比如处理网页中的 JavaScript 内容,或者处理分页的问题。在编写爬虫程序时,一定要遵守网站的使用条款,不要对网站造成过大的负担。

标签:URL,ip,抓取,爬虫,Nokogiri,地址,服务器,Ruby
From: https://blog.51cto.com/u_13488918/8275042

相关文章

  • 利用Ruby库采集唯品会商品详情
    今天给大家分享一下,如果通过ruby对唯品会商品进行采集,必须要安装以下几个库:nokogiri,open-uri,net/http。首先,我们需要在终端中安装这些库,可以通过运行以下命令来安装:```bashgeminstallnokogiriopen-urinet/httpproxy_manager```然后,我们可以开始编写爬虫程序。以下是一个简单......
  • 利用Ruby网络爬虫库采集文库
    今天我们安装一个Ruby的网络爬虫库叫做Nokogiri,它可以帮助我们解析网页的HTML代码,提取出我们需要的信息。我们可以在终端中使用geminstallnokogiri来进行安装。其次,我们需要使用open-uri库来打开网页,然后使用Nokogiri库来解析HTML代码。以下是具体的代码:```rubyrequ......
  • 爬虫之抓取js生成的数据
    有很多页面,当我们用request发送请求,返回的内容里面并没有页面上显示的数据,主要有两种情况,一是通过ajax异步发送请求,得到响应把数据放入页面中,对于这种情况,我们可以查看关于ajax的请求,然后分析ajax请求路径和响应,拿到想要的数据;另外一种就是js动态加载得到的数据,然后放入页面中。这......
  • 使用Wireshark抓取报文
    Wireshark抓取报文(1)如何抓取到你所选择的协议报文我抓取https报文,访问百度服务器得到了pingwww.baidu.com后的IP地址14.119.104.189,然后打开wireshark,在wireshark中选择WLAN接口连接。(2)Wireshark出来很多报文,如何过滤出与你所选协议相关的报文设置抓包过滤器ipdstorsrc......
  • ruby语言怎么写个通用爬虫程序?
    Ruby语言爬虫是指使用Ruby编写的网络爬虫程序,用于自动化地从互联网上获取数据。其中,CRawler是一个基于文本的小型地牢爬虫,它被设计为可扩展,所有游戏数据均通过JSON文件提供,程序仅处理游戏引擎。除此之外,还有其他令人敬畏的网络爬虫,蜘蛛和各种语言的资源,如Python、Java、C#、JavaScr......
  • ruby实战手册(14)-css(1)
    目录linkimportlink<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>learnjs</title><basehref="/"><linkhref="styles/style.css"typ......
  • ruby实战手册(13)-vue 3(4)
    目录全局构建全局构建1<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>learnjs</title><basehref="/"><linkhref="styles/style.css"rel=&......
  • 2023年电影票房王者!学会使用Python轻松抓取猫眼电影网站的票房排行榜数据
    电影票房一直是人们津津乐道的话题,想知道哪些电影在2023年票房大卖吗?本文将为你揭秘2023年猫眼电影网站的票房排行榜,更重要的是,我们将教你如何使用Python一键抓取这些数据,并将它们保存到Excel文件中。跟随本文,让我们一起探索这个有趣的世界吧!底部获取源代码第一部分:了解猫眼电影网......
  • python 抓取优财网Libor利率数据,并使用BeautifulSoup解析
    需求背景:需求是用程序抓取优财网Libor查询伦敦银行同业拆借利率-数据中心-优财网-优财金融数据金融资讯门户官方网站-UCAI123.COM Libor数据,USD的实现思路:没找到优财网的开放API,只能通过读取网页数据,用BeautifulSoup来解析数据,至于为啥不用pandas来解析,是因为pandas适合解析有......
  • Charles 抓取百度指数及微信指数
    一、百度指数  filter:/api/SearchApi/index//搜索指数 filter:/api/SearchApi/index//搜索指数 找到uniqid,继续filter,获取data(用于解密)  filter: api/SearchApi/index,获取对应指数数据用于解密,页面控制台解密: 解密代码functiondecrypt(t,e......