ruby用百度搜索爬虫

潇雨危栏 潇雨危栏     2022-10-02     363

关键词:

Ruby用百度搜索爬虫

博主ruby学得断断续续,打算写一个有点用的小程序娱乐一下,打算用ruby通过百度通道爬取网络信息。

第三方库准备

  • mechanize:比较方便地处理网络请求,类似于Python中的requests
  • nokogiri:解析HTML文本,采用的是jquery选择器

步骤分析

  • 用mechanize创建一个agent对象
  • 我们首先登录百度主页
  • 找到百度『搜索』框的表单
  • 填写表单内容
  • 提交表单(agent用该表单的内容发出submit动作)
  • 分析百度获得的搜索结果列表
  • 用nokogiri解析HTML文本,提取出我们感兴趣的内容

代码

require 'mechanize'
require 'nokogiri'

# 百度搜索的关键字,可修改
keyword = 'ruby'

# 创建一个agent对象
agent = Mechanize.new
# 发送get请求获取页面
page = agent.get 'http://www.baidu.com/'
# 根据名字属性定位表单
search_form = page.form_with :name => 'f'
# 填表,搜索框的name是wd
search_form.field_with(:name => "wd").value = keyword
# 提交表单
search_results = agent.submit search_form
doc = Nokogiri::HTML(search_results.body)
doc.css('.c-container > h3 > a').each{
  |item|
  puts item.text
}

测试结果

golang模拟搜索引擎爬虫(代码片段)

最近网站需要针对百度做SEO优化,相关同学提交代码之后,我这边用Go写了个程序,模拟百度的爬虫,测试返回的内容是否正确。其实很简单,就是发送一个请求,把百度相关的信息放入请求头中即可,代码如下:packagemainimport(&... 查看详情

通用爬虫和聚焦爬虫

...用户提供一个检索的接口,他们每隔一段时间获取一次。百度快照的好处:  如果直接点击链接的话,可能信息已经被删除了,但是点击百度快照的话,可能还会备份的,搜索引擎的话是无法爬取图片的,电影也爬不出来。&nb... 查看详情

高效爬虫实战经典案例

最近,我接到一个任务,具体来说就是:使用百度来搜索30万关键词,把搜索结果中出现的网站链接全部储存下来。我们来计算一下,30万关键词,每个关键词百度会给出75个页面,就是2250万个网页的爬虫量。考虑到延时等在内... 查看详情

爬虫试手——百度贴吧爬虫

...做过的东西还不多,最近开始研究爬虫,想自己写一个爬百度贴吧的帖子内容,然后对帖子做分词和词频统计,看看这个吧热议的关键词都有哪些。百度了好多资料和视频,学到了不少东西,但也生出了一些问题:1、http请求用p... 查看详情

百度文库爬虫

FreeForWenku免费下载百度文库收费资料,支持关键字搜索,以及url批量爬取。目前本项目仅对原项目的doc、txt爬取优化,其余的待完成优化。项目地址:whxf/FreeForWenku声明:本项目fork自Lz1y/FreeForWenku。对原有项目进行优化,添加支... 查看详情

python爬虫1.网络爬虫是什么?(代码片段)

...所熟悉的一系列搜索引擎都是大型的网络爬虫,比如百度、搜狗、360浏览器、谷歌搜索等等。每个搜索引擎都拥有自己的爬虫程序,比如360浏览器的爬虫称作360Spider,搜狗的爬虫叫做Sogouspider。 百度搜索引擎,其... 查看详情

python爬虫1.网络爬虫是什么?(代码片段)

...所熟悉的一系列搜索引擎都是大型的网络爬虫,比如百度、搜狗、360浏览器、谷歌搜索等等。每个搜索引擎都拥有自己的爬虫程序,比如360浏览器的爬虫称作360Spider,搜狗的爬虫叫做Sogouspider。 百度搜索引擎,其... 查看详情

速学爬虫

爬虫前奏 爬虫实例:  1.搜索引擎(百度、谷歌、360搜索等)。  2.伯乐在线。  3.惠惠购物助手。  4.数据分析与研究(数据冰山知乎专栏)。  5.抢票软件等。 什么是网络爬虫:  1.通俗理解:爬虫是一个模拟... 查看详情

百度搜索引擎关键字url采集爬虫优化行业定投方案高效获得行业流量-代码篇(代码片段)

需要结合:《百度搜索引擎关键字URL采集爬虫优化行业定投方案高效获得行业流量--笔记篇》一起看。1#!/user/bin/envpython2#-*-coding:utf-8-*-3#author:隔壁老王45importrequests6importre78defbaidu_spider(key,pn):9#第一步:确认目标URL:百度搜索“程序... 查看详情

爬虫?还是自动化?python使用selenium自动进行百度搜索(代码片段)

...化操作网页浏览器的小应用:打开浏览器,进入百度网页,搜索关键词,最后把搜索结果保存到一个文件里。这个例子非常适合新手学习Python网络自动化,不仅能够了解如何使用Selenium,而且还能知道一 查看详情

百度鲜花图像爬取

...应进行分析从中获取想要爬取的数据,本例子利用代码在百度图片上搜索鲜花,将搜索到的图片保存到本地。首先对百度图片搜索鲜花页面进行分析,图片是不断动态 查看详情

python爬虫:运用多线程ip代理模块爬取百度图片上小姐姐的图片(代码片段)

Python爬虫:运用多线程、IP代理模块爬取百度图片上小姐姐的图片1.爬取输入类型的图片数量(用于给用户提示)使用过百度图片的读者会发现,在搜索栏上输入关键词之后,会显示出搜索的结果,小编想大多数... 查看详情

python爬虫编程思想(91):项目实战--支持搜索功能的图片爬虫

    本文会使用requests库抓取百度图像搜索API返回的JSON数据,并根据图像URL下载图像文件。由于API返回的是JSON格式的数据,所以不需要使用任何HTML分析库,只需要将数据转换为JSON对象即可。     ... 查看详情

python爬虫编程思想(91):项目实战--支持搜索功能的图片爬虫

    本文会使用requests库抓取百度图像搜索API返回的JSON数据,并根据图像URL下载图像文件。由于API返回的是JSON格式的数据,所以不需要使用任何HTML分析库,只需要将数据转换为JSON对象即可。     ... 查看详情

初学者的爬虫日志

...写网络爬虫的心思(所以兴趣很重要!)。打开浏览器,百度了下网络爬虫,什么用python写网络爬虫的的比较多,所以就用它了(好随便的赶脚).然后我开始搜索有关用python写的网络爬虫的网络博客(主要是入门的教程指导类),... 查看详情

ruby基于em的爬虫(代码片段)

查看详情

python爬虫编程思想(35):用正则表达式搜索替换和分隔字符串

目录1.用sub和subn搜索与替换2.使用split分隔字符串1.用sub和subn搜索与替换        sub函数与subn函数用于实现搜索和替换功能。这两个函数的功能几乎完全相同,都是将某个字符串中所有匹配正则表达式... 查看详情

python爬虫入门(代码片段)

...目录python爬虫入门(2)一.实例1.爬取京东热带风味冰红茶2.百度搜索关键词提交其它搜索引擎`必应搜索是咋样的呢?``google`呢?可参考学习3.爬取泸溪河图片并保存4.IP地址自动归属地查询failsuccess二.遇到的问题... 查看详情