ruby-on-rails - Rails Mechanize 数据抓取正确的数据/清理它

标签 ruby-on-rails ruby web-scraping nokogiri mechanize

我无法从 UCAS 网站抓取我想要的确切数据。

目前我正在使用以下代码提取类(class)标题:

  course_page.search('ol.resultscontainer li').each do |course|
  @course_name = course.search('.courseTitle').text

这为我提供了,例如:
 Mathematics (PGDE - Graduates only)

下面我用括号中的 UCAS 代码提取类(class)标题:
 course_page.search('ol.resultscontainer li').each do |course|
            @ucas_numb = clean_text(course.search('h4').text)

这为我提供了:
Mathematics (PGDE - Graduates only)(G1X1)

我想在最后一个例子中提取 UCAS 代码(上面例子中的 G1X1)。任何人都可以帮助我解决此问题或如何仅选择要抓取的 UCAS 代码的方法吗?

下面是我正在抓取的 UCAS 网站上的代码,它处理我想要抓取的数据:
    <h4><a href="/course/summary/452492/mathematics-pgde-graduates-only?Count…&page=6&providerids=41&Feather=7&MaxResults=1000&ret=results">

        <span class="courseTitle"></span>
    (G1X1)
</a> <h4>

最佳答案

对于任何想知道的人,我通过使用以下代码删除 span 类来解决这个问题:

            # Removes excess html which was interferring with text
            course.search(
                '.coursenamearea a span,').remove

关于ruby-on-rails - Rails Mechanize 数据抓取正确的数据/清理它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38018052/

相关文章:

ruby-on-rails - 从 Controller 调用时,render_to_string 返回空字符串

ruby 继承 vs mixins

Ruby 连接字符串并添加空格

ruby - 使用单个应用程序监控多个 RabbitMq 订阅

python mechanize/requests/selenium 用于弹出登录?

javascript - 使用方法 : :delete 在 RAILS 中删除

ruby-on-rails - rspec工厂女孩协会

ruby-on-rails - Rails `with_lock` 会阻止读取吗?

python - 抓取表仅返回 "tbody"而不是 tbody 的内容

web - 有没有办法以编程方式下载网页的部分内容,而不是整个 HTML 正文?