Ruby 如何找到一个嵌入的;a「;标签

Ruby 如何找到一个嵌入的;a「;标签,ruby,html-parsing,nokogiri,Ruby,Html Parsing,Nokogiri,我无法在p.user\u info中获取a标记: <p class="user_info"> <a href="javascript:;" onClick="showSideView(this, 'login_id', 'user_name', 'ZmFubmlAaGFubWFpbC5uZXQ=', '');" title="[login_id]user_name"> <img src='/cs2/data/member/fa/login_

我无法在
p.user\u info
中获取
a
标记:

<p class="user_info"> 
    <a href="javascript:;" onClick="showSideView(this, 'login_id', 'user_name', 'ZmFubmlAaGFubWFpbC5uZXQ=', '');" title="[login_id]user_name">
        <img src='/cs2/data/member/fa/login_id.gif?dt=20130117095107' align='absmiddle' border='0'> of
    </a>
</p>
是否可以使用Nokogiri在
a
标签中获取
login\u id
user\u name


我发现了一个更重要的问题:

url = "http://clien.net/cs2/bbs/board.php?bo_table=park&wr_id=23895599"
html = open(url).read
puts html
# => ...
<p class="user_info"> <img src='/cs2/data/member/at/atlantis33.gif?dt=20130506110916' align='absmiddle' border='0'>님 </p>
...
url=”http://clien.net/cs2/bbs/board.php?bo_table=park&wr_id=23895599"
html=打开(url)。读取
放置html
# => ...

...
我不知道为什么我无法获得
a
标记。

请尝试以下操作:

require 'nokogiri'

html = <<eoh
<p class="user_info"> 
    <a href="javascript:;" onClick="showSideView(this, 'login_id', 'user_name', 'ZmFubmlAaGFubWFpbC5uZXQ=', '');" title="[login_id]user_name">
        <img src='/cs2/data/member/fa/login_id.gif?dt=20130117095107' align='absmiddle' border='0'> of
    </a>
</p>
eoh

page = Nokogiri::HTML(html)
a = page.at_css("p.user_info a")
p a[:onclick].split(',')[1,2]
# => [" 'login_id'", " 'user_name'"]
p a[:onclick].split(',')[1,2].map { |x| x.gsub(/^[' ]+|[' ]+$/, '') }
# => ["login_id", "user_name"]
需要“nokogiri”
html=[“登录id”,“用户名”]
要求“nokogiri”
a=%{

“} html=Nokogiri::html(a) link=html.at_css“a” 放置链接。值[1]。拆分[1] 放置链接。值[1]。拆分[2]
回答我自己。
a
标签只有在登录后才能看到。需要
机械化
库。

我发现问题。打开(url)。阅读无法获得p.user\u信息a。我想可能是因为ruby。这需要证明它实际上会检索到所需的标签。OP需要它在带有“.user\u info”的标签中找到“a”“上课。如果前面有一个“a”,代码就错了。对不起,这不是nokogiri的问题。。。打开(url)。阅读#=>

我解决了这个错误。这不是登录会话。我投票将此问题作为离题问题关闭,因为“它需要登录”该问题应该关闭,因为它离题,因为它无法复制。这是否回答了您的问题?因为我的错误,我投票决定以离题的方式结束这个问题
require 'nokogiri'

html = <<eoh
<p class="user_info"> 
    <a href="javascript:;" onClick="showSideView(this, 'login_id', 'user_name', 'ZmFubmlAaGFubWFpbC5uZXQ=', '');" title="[login_id]user_name">
        <img src='/cs2/data/member/fa/login_id.gif?dt=20130117095107' align='absmiddle' border='0'> of
    </a>
</p>
eoh

page = Nokogiri::HTML(html)
a = page.at_css("p.user_info a")
p a[:onclick].split(',')[1,2]
# => [" 'login_id'", " 'user_name'"]
p a[:onclick].split(',')[1,2].map { |x| x.gsub(/^[' ]+|[' ]+$/, '') }
# => ["login_id", "user_name"]
require 'nokogiri'                                                              

a =%{<p class="user_info">                                                      
    <a href="javascript:;" onClick="showSideView(this, 'login_id', 'user_name', 'ZmFubmlAaGFubWFpbC5uZXQ=', '');" title="[login_id]user_name">
<img src='/cs2/data/member/fa/login_id.gif?dt=20130117095107' align='absmiddle' border='0'> of
</a>                                                            
</p>"}                                                          

html = Nokogiri::HTML(a)                                                        
link = html.at_css "a"                                                          
puts link.values[1].split[1]                                                    
puts link.values[1].split[2]