我有网页,我需要从中抓取一些数据.问题是,每个页面可能有也可能没有特定数据,或者它可能在DOM中具有高于或低于它的额外数据,并且没有CSS ID可以说.
通常我可以使用CSS ID或XPath来访问我正在寻找的节点.在这种情况下我没有这个选项.我正在尝试做的是搜索"标签"文本,然后在下一个<TD>节点中获取数据:
<tr>
<td><b>Name:</b></td>
<td>Joe Smith <small><a href="/Joe"><img src="/joe.png"></a></small></td>
</tr>
Run Code Online (Sandbox Code Playgroud)
在上面的HTML中,我会搜索:
doc.search("[text()*='Name:']")
Run Code Online (Sandbox Code Playgroud)
在我需要的数据之前获取节点,但我不确定如何从那里导航.
有没有人知道是否有一个Rails gem/plugin/tutorial,它显示了如何创建类似于stackoverflow使用的Badge/Achievement系统.
谢谢.
我正在尝试在OSX 10.6.7上安装RVM并开始使用它在每个项目的基础上对我的开发环境进行沙箱化,但是我遇到了一些问题.
我安装了RVM并为Rails 2.3.11创建了一个gemset,并确保所有需要的gem都安装了gem list:
actionmailer (2.3.11)
actionpack (2.3.11)
activemodel (3.0.7)
activerecord (3.0.7, 2.3.11)
activeresource (2.3.11)
activesupport (3.0.7, 2.3.11)
acts_as_commentable (3.0.1)
ajaxful_rating (2.2.8.2)
arel (2.0.9)
authlogic (3.0.2)
builder (2.1.2)
geokit (1.5.0)
i18n (0.5.0)
mysql (2.8.1)
rack (1.1.2)
rails (2.3.11)
rake (0.8.7)
rbbcode (0.1.11)
sanitize-url (0.1.4)
tzinfo (0.3.27)
will_paginate (2.3.15)
Run Code Online (Sandbox Code Playgroud)
但是当我启动服务器(脚本/服务器)时,我收到以下错误:
Missing these required gems:
authlogic
You're running:
ruby 1.8.7.334 at /Users/Nick/.rvm/rubies/ruby-1.8.7-p334/bin/ruby
rubygems 1.6.2 at /Users/Nick/.rvm/gems/ruby-1.8.7-p334, /Users/Nick/.rvm/gems/ruby-1.8.7-p334@global
Run `rake gems:install` to install the missing gems.
Run Code Online (Sandbox Code Playgroud)
运行rake gems:安装似乎没有帮助.'这'给了我以下路径:
which ruby
/Users/Nick/.rvm/rubies/ruby-1.8.7-p334/bin/ruby
which …Run Code Online (Sandbox Code Playgroud) 我已经通过jQuery实现了我自己的自动完成功能,但浏览器用自己的自动完成信息覆盖了第一个选项?有没有办法从服务器端关闭此字段的自动完成?