2012-02-20 8 views
2

私は(彼らは非常に似ている)これら二つのサイトからいくつかの宝くじの結果を解析するMechanizeのと鋸山を使用しています: http://www1.caixa.gov.br/loterias/loterias/lotofacil/lotofacil_resultado.asp http://lotofacil.resultadoloteria.org/ルビーMechanizeのフルコンテンツを取得できません

ここに私のコードです:

require 'nokogiri' 
require 'mechanize' 

agent = Mechanize.new 
agent.user_agent_alias = 'Mac Safari' 
page = agent.get('http://lotofacil.resultadoloteria.org/') 
doc = Nokogiri::HTML(page.body) 
doc.xpath('//table[@class="tabela_jogo"]//span').each { |value| puts value } 

第二サイトが正常に動作します。結果:

<span id="lfacil1">01</span> 
<span id="lfacil2">03</span> 
<span id="lfacil3">05</span> 
<span id="lfacil4">08</span> 
<span id="lfacil5">10</span> 
<span id="lfacil6">11</span> 
<span id="lfacil7">13</span> 
<span id="lfacil8">14</span> 
<span id="lfacil9">15</span> 
<span id="lfacil10">18</span> 
<span id="lfacil11">20</span> 
<span id="lfacil12">22</span> 
<span id="lfacil13">23</span> 
<span id="lfacil14">24</span> 
<span id="lfacil15">25</span> 

しかし、最初からロット番号を取得することはできません。 p page.bodyがあまりにも宝くじ番号のないコンテンツを返すので、

<span id="lfacil1"></span> 
<span id="lfacil2"></span> 
<span id="lfacil3"></span> 
<span id="lfacil4"></span> 
<span id="lfacil5"></span> 
<span id="lfacil6"></span> 
<span id="lfacil7"></span> 
<span id="lfacil8"></span> 
<span id="lfacil9"></span> 
<span id="lfacil10"></span> 
<span id="lfacil11"></span> 
<span id="lfacil12"></span> 
<span id="lfacil13"></span> 
<span id="lfacil14"></span> 
<span id="lfacil15"></span> 
<span id="lfacil1_2"></span> 
<span id="lfacil2_2"></span> 
<span id="lfacil3_2"></span> 
<span id="lfacil4_2"></span> 
<span id="lfacil5_2"></span> 
<span id="lfacil6_2"></span> 
<span id="lfacil7_2"></span> 
<span id="lfacil8_2"></span> 
<span id="lfacil9_2"></span> 
<span id="lfacil10_2"></span> 
<span id="lfacil11_2"></span> 
<span id="lfacil12_2"></span> 
<span id="lfacil13_2"></span> 
<span id="lfacil14_2"></span> 
<span id="lfacil15_2"></span> 

私はMechanizeので何かあると思う:ここでの結果です。何か案は?

ありがとうございました。 :)

答えて

2

彼らはそこにいないからです。でも、私はあなたのためにそれらを見つけました:これに代えても

page = agent.get('http://www1.caixa.gov.br/loterias/loterias/lotofacil/lotofacil_pesquisa_new.asp') 
numbers = page.body.split('|')[3..17] 

doc = Nokogiri::HTML(page.body) 

Mechanizeのは、すでにあなたのための世話をしています

doc = page.parser 
+0

おかげでたくさん!しかし、どのようにそのページを見つけましたか? – Hodes

+0

あなたは大歓迎です。私はチャールズプロキシを開いた状態でクロムに読み込んだ後、チャールズを数字で検索しました。 – pguardiario

+0

もう一度ありがとうございます。 :) – Hodes

関連する問題