【问题标题】:I'm having some trouble screen scraping with Ruby (using RestClient) in a POST request page我在 POST 请求页面中使用 Ruby(使用 RestClient)进行屏幕抓取时遇到了一些问题
【发布时间】:2012-06-18 22:05:48
【问题描述】:

我正在尝试从棕榈滩县治安官办公室的 police blotter 获取逮捕数据。

我已将搜索范围限制在西棕榈滩市,可追溯到数据(1974 年 10 月 31 日)。

我正在使用 FireFox。

当我得到结果时,我打开 FireBug,检查 HTML 选项卡,我可以从页面中看到我想要的信息(即被捕者的姓名、逮捕地址、指控等)。

我检查了 Net>>XHR>>Post 选项卡以找到 POST 请求参数,并将其放入我的代码中,但它返回的 HTML 不包含我正在寻找的重要信息。

有谁知道我是不是做错了,还是该网站是不可抓取的?这是我的代码:

require 'rubygems'
require 'nokogiri'
require 'restclient'
require 'open-uri'

blotterURL = 'http://www.pbso.org/index.cfm?fa=blotter'

city = "west palm beach"
fromrec = 1

if page = RestClient.post(blotterURL, {'city_name'=>city, 'fromrec'=>fromrec})
    puts Nokogiri::HTML(page)
end

【问题讨论】:

    标签: ruby screen-scraping web-scraping rest-client


    【解决方案1】:

    这是因为页面被 ajax 更新填充。可能 Watir-webdriver 是您的最佳选择。

    【讨论】:

    • 好的,我已经安装了 watir-webdriver。我正在为它寻找一个好的网络抓取指南。你说哪个最好?感谢您的回复。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-01
    • 2020-10-18
    • 1970-01-01
    相关资源
    最近更新 更多